Với iOS 14.5, Apple yêu cầu nhà phát triển phải nhận được sự cho phép của người dùng thông qua khung Minh bạch về việc theo dõi ứng dụng để theo dõi họ hoặc truy cập vào mã nhận dạng cho quảng cáo (IDFA) của thiết bị. Hãy xem tài liệu về Quyền riêng tư của người dùng và việc sử dụng dữ liệu của Apple và Tính minh bạch trong việc theo dõi ứng dụng của Apple để biết thêm thông tin chi tiết.
Các sản phẩm Firebase bị ảnh hưởng
SDK Firebase không truy cập vào IDFA, mặc dù một số SDK có tích hợp với Google Analytics có thể liên quan đến quyền truy cập vào IDFA.
Bảng bên dưới liệt kê các sản phẩm Firebase có trên các nền tảng của Apple và mô tả mức độ tác động đến chức năng của từng sản phẩm nếu không thể truy cập vào IDFA.
Product | Tác động nếu không truy cập được IDFA |
---|---|
A/B Testing | Một số dữ liệu nhắm mục tiêu (như dữ liệu nhân khẩu học) trong quá trình tích hợp A/B Testing với Google Analytics được lấy từ IDFA. Trong các ứng dụng không có quyền truy cập vào IDFA, bạn sẽ không thể sử dụng tiêu chí nhắm mục tiêu này. |
App Check | Không ảnh hưởng |
App Distribution | Không ảnh hưởng |
Authentication | Không ảnh hưởng đến Authentication và các nhà cung cấp Authentication của bên thứ nhất, chẳng hạn như tính năng Đăng nhập bằng Google và Xác thực qua điện thoại. |
Crashlytics | Không ảnh hưởng. Việc tích hợp Crashlytics với Google Analytics cung cấp dữ liệu sự cố theo thời gian thực và đường dẫn không phụ thuộc vào IDFA. |
Dynamic Links | Không ảnh hưởng đến chức năng mở đường liên kết. Khi sử dụng với Google Analytics, bạn sẽ không thể phân bổ cho các sự kiện chuyển đổi liên kết. |
Cloud Firestore | Không ảnh hưởng |
Cloud Functions | Không ảnh hưởng |
In-App Messaging | Không ảnh hưởng |
Firebase lượt cài đặt | Không ảnh hưởng |
InstanceID | Không ảnh hưởng |
Cloud Messaging | Khi được sử dụng với Google Analytics, Google Analytics sẽ tự động ghi lại một số sự kiện chuyển đổi liên quan đến FCM. Bạn cần có quyền truy cập vào IDFA để phân bổ cho các sự kiện này. |
Firebase ML | Không ảnh hưởng |
Performance Monitoring | Không ảnh hưởng |
Remote Config | Khi được sử dụng với Google Analytics, Remote Config không cho phép sử dụng các thuộc tính người dùng được tạo tự động để nhắm mục tiêu mà không có quyền truy cập vào IDFA. |
Realtime Database | Không ảnh hưởng |
Cloud Storage | Không ảnh hưởng |
Vertex AI in Firebase | Không ảnh hưởng |
Các công cụ tích hợp Firebase bị ảnh hưởng
Bảng bên dưới liệt kê các sản phẩm tích hợp Firebase bị ảnh hưởng nếu không truy cập được IDFA.
Product | Tác động nếu không truy cập được IDFA |
---|---|
Google Analytics | Việc ghi nhật ký sự kiện Analytics, báo cáo sự kiện và đo lường lượt chuyển đổi sẽ không bị ảnh hưởng, nhưng hoạt động phân bổ sẽ bị ảnh hưởng nếu không truy cập được IDFA. Để tìm hiểu thêm về phản hồi của Google đối với iOS 14, hãy xem bài đăng trên blog của chúng tôi. |
Yêu cầu cấp quyền theo dõi ứng dụng trên iOS 14
Nếu muốn ứng dụng của mình trên Apple có thể truy cập vào IDFA, bạn có thể thêm khung Minh bạch về việc theo dõi ứng dụng của Apple vào ứng dụng và yêu cầu quyền theo dõi hoặc truy cập vào IDFA của người dùng.
Nhiều ứng dụng chọn hiển thị màn hình chào mừng (hoặc giải thích) trước khi yêu cầu quyền. Màn hình giải thích cho phép bạn cung cấp cho người dùng thêm bối cảnh về cách ứng dụng của bạn sử dụng IDFA trước khi yêu cầu quyền truy cập.
Nếu bạn là nhà xuất bản ứng dụng AdMob hoặc Ad Manager, hãy cân nhắc sử dụng Funding Choices. Funding Choices sẽ tự động xử lý việc thu thập sự đồng ý phân phát quảng cáo được cá nhân hoá cũng như sự đồng ý theo dõi người dùng theo nguyên tắc của Apple. Hãy xem trang AdMob Sự đồng ý với tính năng Thông báo cho người dùng để biết thêm thông tin.
Hướng dẫn sau đây cung cấp một giải pháp sử dụng Firebase In-App Messaging để tạo và hiển thị màn hình giải thích trước khi yêu cầu quyền truy cập thông tin theo dõi thông qua khung Minh bạch về việc theo dõi ứng dụng.
Thêm In-App Messaging vào ứng dụng
Làm theo hướng dẫn để thêm In-App Messaging vào ứng dụng Apple.
Xử lý việc đóng thông báo trong ứng dụng
Trước tiên, hãy tránh hiển thị màn hình giải thích trên các thiết bị không thể hiển thị hộp thoại yêu cầu đồng ý, chẳng hạn như các thiết bị chạy iOS 13. Đảm bảo mã này thực thi ngay sau FirebaseApp.configure()
.
Swift
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
Triển khai giao thức InAppMessagingDisplayDelegate
để xử lý các sự kiện khi người dùng đóng màn hình giải thích. Nếu người dùng nhấn vào OK, hãy hiển thị lời nhắc của hệ thống thông qua khung App Tracking Transparency.
Swift
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
Tạo chiến dịch In-App Messaging
Sau khi mã được đưa vào ứng dụng, hãy tạo một thông báo trong ứng dụng trong bảng điều khiển Firebase.
- Trong bảng điều khiển Firebase, hãy tạo một chiến dịch In-App Messaging mới.
- Điền nội dung bạn muốn vào thông báo trong ứng dụng và đặt thông báo để kích hoạt trên sự kiện
app_launch
. - Trong mục Nhắm mục tiêu, hãy đảm bảo chiến dịch chỉ nhắm đến phiên bản mới nhất của ứng dụng trở lên.
Bạn có thể tuỳ chỉnh giao diện của màn hình giải thích bằng cách làm theo hướng dẫn trong tài liệu về In-App Messaging.
Không bắt buộc: Thử nghiệm A/B cho nhiều màn hình giải thích
In-App Messaging tích hợp sẵn với Firebase A/B Testing. Bạn có thể sử dụng tính năng này để thử nghiệm với nhiều màn hình giải thích.
Firebase A/B Testing tự động tạo các nhóm thử nghiệm và giúp bạn hình dung cách người dùng tương tác với các biến thể khác nhau của ứng dụng.
Ghi lại quyền theo dõi ứng dụng
Nếu không ghi lại sự kiện Google Analytics khi xử lý phản hồi về quyền theo dõi ứng dụng, bạn sẽ cần phải ghi lại để đo lường những thay đổi về tỷ lệ phản hồi khi chạy thử nghiệm A/B.
Swift
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
Tạo sự kiện chuyển đổi mới
Trong phần Analytics của bảng điều khiển Firebase, hãy chuyển đến trình đơn Lượt chuyển đổi, sau đó thêm một sự kiện chuyển đổi mới có cùng tên với sự kiện được ghi lại bằng mã mẫu ở trên.
Tạo thử nghiệm mới
Trong trình đơn In-App Messaging của bảng điều khiển, hãy nhấp vào Thử nghiệm mới, sau đó làm theo hướng dẫn trên màn hình.
- Trong mục Nhắm mục tiêu, hãy đảm bảo chiến dịch chỉ nhắm đến phiên bản mới nhất của ứng dụng trở lên.
- Trong phần Mục tiêu, hãy chọn sự kiện chuyển đổi mà bạn đã tạo bằng mã mẫu ở trên cũng như mọi chỉ số khác mà bạn muốn theo dõi.
Sau khi bạn phát hành thử nghiệm, thử nghiệm đó sẽ cần thu thập dữ liệu trong một khoảng thời gian trước khi có thể đưa ra kết quả chính xác.
Hãy đọc tài liệu về Firebase A/B Testing để biết thông tin về cách theo dõi một thử nghiệm và triển khai một biến thể thành công.