Chuẩn bị để đáp ứng các yêu cầu của Apple về thông tin công bố liên quan đến dữ liệu trên App Store

Apple yêu cầu các nhà phát triển xuất bản ứng dụng trên App Store công bố một số thông tin nhất định về việc sử dụng dữ liệu trong ứng dụng của họ.

Tài liệu này chứa các hành vi của thư viện nền tảng Firebase Apple có thể cần phải công bố thông tin theo nguyên tắc của Apple. Khi cài đặt Firebase, hãy lưu ý các mục tiêu bản dựng được cài đặt vào ứng dụng của bạn bằng trình quản lý phần phụ thuộc mà bạn chọn. Đối với mỗi mục tiêu mà trình quản lý phần phụ thuộc liệt kê, hãy xem lại phần tương ứng của tài liệu này để xác định hoạt động thu thập dữ liệu mà bạn phải công bố. Số lượng mục tiêu bản dựng Firebase mà bạn đã cài đặt có thể lớn hơn số lượng mục tiêu mà bạn dự kiến vì một số mục tiêu bản dựng Firebase có các phần phụ thuộc tạm thời trên các mục tiêu khác.

Nếu bạn đang sử dụng bất kỳ tính năng sản phẩm tuỳ chọn nào cần có dữ liệu bổ sung hoặc tham gia bất kỳ thử nghiệm nào đối với các tính năng sản phẩm mới cần có dữ liệu bổ sung, hãy nhớ kiểm tra xem những tính năng hoặc thử nghiệm đó có yêu cầu thông tin công bố bổ sung về dữ liệu hay không.

Để đảm bảo thông tin công bố của ứng dụng là chính xác, bạn nên luôn sử dụng phiên bản mới nhất của mỗi SDK Firebase.

Tác nhân người dùng Firebase

Tác nhân người dùng Firebase là một gói thông tin được thu thập từ hầu hết các SDK Firebase, bao gồm những thông tin sau: thiết bị, hệ điều hành, mã gói ứng dụng và nền tảng dành cho nhà phát triển. Tác nhân người dùng không bao giờ được liên kết với giá trị nhận dạng người dùng hoặc thiết bị và được nhóm Firebase sử dụng để xác định việc sử dụng nền tảng và phiên bản nhằm đưa ra quyết định chính xác hơn về tính năng của Firebase.

FirebaseCore

  • Không thu thập dữ liệu.

GoogleUtilities

  • Không thu thập dữ liệu, nhưng bao gồm các tiện ích mạng mà các SDK khác có thể sử dụng để thu thập dữ liệu.

GoogleDataTransport

Bao gồm các tiện ích mạng mà các SDK khác có thể sử dụng để thu thập dữ liệu.

Luôn được thu thập

  • Thu thập siêu dữ liệu về hiệu suất SDK, chẳng hạn như kích thước của bộ nhớ đệm sự kiện nhật ký ứng dụng và số lượng sự kiện nhật ký ứng dụng bị loại bỏ vì nhiều lý do, để theo dõi và duy trì chất lượng sản phẩm.

FirebaseABTesting

Thử nghiệm A/B không thu thập dữ liệu.

SDK Firebase A/B Testing thiết lập và sử dụng các thuộc tính người dùng Google Analytics để chỉ định tư cách thành viên trong các nhóm thử nghiệm cho Firebase Remote ConfigFirebase In-App Messaging.

Google Analytics

Bạn có thể xem thông tin về hoạt động thu thập dữ liệu của Google Analytics trong bài viết hỗ trợ này.

FirebaseAppCheck

Được thu thập theo mặc định

Tuỳ thuộc vào mức sử dụng

  • Nếu nhà cung cấp DeviceCheck đã được cài đặt, hãy thu thập mã thông báo DCDevice từ DeviceCheck.
  • Nếu nhà cung cấp Chứng thực ứng dụng được cài đặt, hãy thu thập cả đối tượng chứng thực và đối tượng xác nhận từ Chứng thực ứng dụng.

FirebaseAppDistribution

SDK Phân phối ứng dụng chỉ dành cho mục đích thử nghiệm beta. Đừng đưa SDK phân phối ứng dụng vào ứng dụng của bạn khi gửi đến App Store.

FirebaseAuthentication

Luôn được thu thập

  • Tạo và lưu trữ giá trị nhận dạng cho mục đích xác thực người dùng.

Được thu thập theo mặc định

Tuỳ thuộc vào mức sử dụng

  • Thu thập tên hiển thị, nếu nhà phát triển cung cấp tên hiển thị cho người dùng.
  • Thu thập địa chỉ email của người dùng do nhà phát triển cung cấp khi sử dụng xác thực bằng mật khẩu email hoặc đường liên kết email, hoặc như có trong phản hồi của nhà cung cấp liên kết nếu nhà phát triển sử dụng danh tính liên kết.
  • Thu thập số điện thoại của người dùng do nhà phát triển cung cấp khi sử dụng tính năng xác thực điện thoại hoặc nếu số điện thoại của người dùng được thêm làm phương thức xác thực. Cũng được thu thập trong quy trình xác thực bằng SMS làm yếu tố thứ hai.
  • Thu thập thông tin liên hệ liên quan đến nhà cung cấp dịch vụ xác thực bên thứ ba nếu nhà phát triển sử dụng nhà cung cấp dịch vụ xác thực bên thứ ba bằng Firebase Authentication. Ví dụ: giá trị nhận dạng của người dùng có thể được liên kết với hồ sơ Facebook của họ nếu nhà phát triển sử dụng tính năng xác thực Facebook, tuỳ thuộc vào phạm vi được cấp. Hãy tham khảo tài liệu của trình cung cấp dịch vụ xác thực để biết thêm thông tin.
  • Lưu trữ mã nhận dạng Game Center của người dùng nếu ứng dụng được liên kết với Game Center.
  • Thu thập mã thông báo này nếu ứng dụng của bạn sử dụng reCAPTCHA Enterprise để bảo vệ luồng Authentication. Xem thêm thông tin chi tiết về quyền riêng tư của Apple đối với reCAPTCHA Enterprise.

FirebaseCrashlytics

Luôn được thu thập

  • Thu thập dấu vết ngăn xếp và trạng thái ứng dụng có liên quan khi ứng dụng gặp sự cố.
  • Thu thập thông tin về thiết bị và hệ điều hành để hỗ trợ gỡ lỗi sự cố.

Tuỳ thuộc vào mức sử dụng

  • Thu thập mọi khoá tuỳ chỉnh, nhật ký và mã nhận dạng người dùng dạng văn bản tự do mà nhà phát triển đính kèm vào báo cáo sự cố. Ngoài ra, thu thập mọi sự kiện không nghiêm trọng do nhà phát triển xác định bằng dấu vết ngăn xếp tuỳ chỉnh.
  • Thu thập nhật ký "breadcrumb" nếu Crashlytics được sử dụng cùng với Google Analytics. Các nhật ký này xác định các hành động của người dùng ngay trước khi xảy ra sự cố cùng với số lượng sự cố.
  • Thu thập các phần do nhà phát triển xác định của mẫu Remote Config và siêu dữ liệu mẫu nếu SDK Firebase Remote Config cũng có trong ứng dụng. Dữ liệu này bao gồm phiên bản mẫu Remote Config, mã biến thể triển khai, khoá tham số và giá trị tham số chịu ảnh hưởng của các bản phát hành đang hoạt động.

FirebaseDatabase

Được thu thập theo mặc định

  • Tạm thời thu thập dữ liệu thiết bị, bao gồm kích thước màn hình, ngôn ngữ, phiên bản hệ điều hành, mã gói, địa chỉ IP và phiên bản SDK Firebase của thiết bị cho các đường liên kết sâu bị trì hoãn (đường liên kết sâu sau khi cài đặt ứng dụng).
  • Tạm thời thu thập URL đường liên kết động trong bảng nhớ tạm của thiết bị (nếu có) trong lần chạy ứng dụng đầu tiên. Nhà phát triển có thể tắt tính năng sử dụng Pasteboard bằng cách đặt thuộc tính FirebaseDeepLinkPasteboardRetrievalEnabled thành NO trong tệp Info.plist của ứng dụng.

Nếu dùng Dynamic Links cùng với Google Analytics:

  • Tự động ghi lại các sự kiện tương tác liên kết qua Google Analytics. Để tắt tính năng ghi nhật ký sự kiện tự động, hãy xoá FirebaseAnalytics khỏi ứng dụng.

FirebaseFirestore

Được thu thập theo mặc định

FirebaseFunctions

Luôn được thu thập

  • Thu thập siêu dữ liệu lệnh gọi hàm, bao gồm tên hàm và địa chỉ IP của phương thức gọi hàm.

FirebaseInAppMessaging

Luôn được thu thập

  • Ghi lại các lượt tương tác với thông báo trong ứng dụng. Những lượt tương tác này (lượt hiển thị, lượt nhấp, lượt đóng) được ghi lại thông qua Google Analytics. Firebase cũng ghi lại các lượt tương tác để giúp nhà phát triển đánh giá hiệu quả của chiến dịch nhắn tin.

FirebaseInstallations

Được thu thập theo mặc định

FirebaseMessaging

Luôn được thu thập

  • Ghi lại mã thông báo APN và liên kết mã thông báo đó với mã cài đặt ứng dụng đã thu thập đóng vai trò là mã thông báo đăng ký Giải pháp gửi thông báo qua đám mây của Firebase (FCM).
  • Thu thập mẫu thiết bị, ngôn ngữ, múi giờ, phiên bản hệ điều hành, giá trị nhận dạng ứng dụng và phiên bản ứng dụng để đăng ký và huỷ đăng ký chủ đề.

Được thu thập theo mặc định

Tuỳ thuộc vào mức sử dụng

Nếu Cloud Messaging được sử dụng cùng với Google Analytics:

  • Tự động ghi lại các lượt tương tác với thông báo thông qua Google Analytics. Để tắt hành vi này, hãy xoá FirebaseAnalytics khỏi ứng dụng.

FirebaseMLModelDownloader

Luôn được thu thập

  • Thu thập siêu dữ liệu tải mô hình học máy xuống, chẳng hạn như sự kiện tải xuống, sự kiện xoá và lỗi.

FirebasePerformance

Luôn được thu thập

  • Thu thập địa chỉ IP để phân đoạn dữ liệu hiệu suất dựa trên vị trí địa lý.
  • Thu thập các chỉ số hiệu suất của ứng dụng, chẳng hạn như thời gian khởi chạy ứng dụng và độ trễ của yêu cầu mạng, cũng như các dấu vết tuỳ chỉnh do nhà phát triển chỉ định để đo lường hiệu suất của ứng dụng.
  • Thu thập mức sử dụng CPU/bộ nhớ của ứng dụng để cung cấp chế độ xem theo dòng thời gian về hiệu suất của ứng dụng.
  • Thu thập thông tin về thiết bị, hệ điều hành, ứng dụng để lọc dữ liệu hiệu suất theo các phân khúc thiết bị.

FirebaseRemoteConfig

Luôn được thu thập

  • Thu thập mã quốc gia, mã ngôn ngữ, múi giờ, phiên bản hệ điều hành, mã ứng dụng Apple Firebase và mã gói của thiết bị để nhắm đến các tham số dựa trên dữ liệu này. Phiên bản hệ điều hành và phiên bản SDK cũng được thu thập và tổng hợp để hiểu rõ xu hướng sử dụng và định hướng sản phẩm.

Được thu thập theo mặc định

Tuỳ thuộc vào mức sử dụng

Nếu Remote Config được sử dụng cùng với Google Analytics:

  • Thu thập các thuộc tính người dùng mà SDK Firebase thu thập được cho Google Analytics để nhắm mục tiêu các tham số dựa trên điều kiện của thuộc tính người dùng.
  • Thu thập dấu thời gian sự kiện first_open do SDK Firebase thu thập cho Google Analytics để nhắm mục tiêu các thông số dựa trên thời gian mở lần đầu.

Nếu bạn sử dụng tính năng cá nhân hoá Remote Config:

  • Dữ liệu do SDK Firebase Remote Config thu thập và các sự kiện do SDK Firebase thu thập cho Google Analytics có thể được dùng để xây dựng mô hình dự đoán và đo lường hiệu suất của các mô hình đó.

FirebaseSessions

Luôn được thu thập

  • Thu thập siêu dữ liệu về hiệu suất ứng dụng, chẳng hạn như mã gói, thông tin hệ điều hành, phiên bản SDK và loại kết nối mạng để theo dõi chất lượng ứng dụng.
  • Thu thập dữ liệu sử dụng, chẳng hạn như thời gian một ứng dụng chạy ở chế độ nền để nhóm các chỉ số hiệu suất thành phiên người dùng nhằm lọc mức sử dụng theo phiên.

FirebaseStorage

Được thu thập theo mặc định

FirebaseVertexAI

Luôn được thu thập

  • Thu thập phiên bản SDK Firebase và phiên bản ngôn ngữ Swift.
  • Thu thập tên mô hình khi gọi.