Hỗ trợ iOS 14

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 Appletài liệu về Minh bạch về việc theo dõi ứng dụng của Apple để biết thêm thông tin.

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 việc 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 nền tảng Apple và mô tả cách chức năng của từng sản phẩm bị ảnh hưởng nếu không truy cập được vào IDFA.

Product Impact if IDFA is not accessible
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 tính năng tích hợp A/B Testing với Google Analytics được lấy từ IDFA. Trong các ứng dụng không truy cập được vào IDFA, tính năng nhắm mục tiêu này không dùng được.
Firebase AI Logic 1 Không ảnh hưởng
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 dịch vụ Authentication bên thứ nhất, chẳng hạn như Đăng nhập bằng Google và Xác thực qua điện thoại.
Cloud Firestore Không ảnh hưởng
Cloud Functions Không ảnh hưởng
Cloud Messaging Khi được 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. Tính năng phân bổ cho các sự kiện này yêu cầu quyền truy cập vào IDFA.
Cloud Storage Không ảnh hưởng
Crashlytics Không ảnh hưởng. Tính năng tích hợp Crashlytics với Google Analytics cung cấp dữ liệu sự cố và đường dẫn theo thời gian thực 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 được dùng với Google Analytics, tính năng phân bổ cho các sự kiện chuyển đổi từ đường liên kết không dùng được.
In-App Messaging Không ảnh hưởng
Firebase installations Không ảnh hưởng
InstanceID Không ảnh hưởng
Firebase ML Không ảnh hưởng
Performance Monitoring Không ảnh hưởng
Realtime Database Không ảnh hưởng
Remote Config Khi được dùng với Google Analytics, Remote Config không cho phép 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.

1 Firebase AI Logic trước đây có tên là "Vertex AI in Firebase".

Các tính năng 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 với Firebase bị ảnh hưởng nếu không truy cập được vào IDFA.

Product Impact if IDFA is not accessible
Google Analytics Analytics Tính năng ghi nhật ký sự kiện, báo cáo sự kiện và đo lường lượt chuyển đổi không bị ảnh hưởng, nhưng tính năng phân bổ sẽ bị ảnh hưởng nếu không truy cập được vào IDFA. Để tìm hiểu thêm về phản ứng 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 quyền theo dõi ứng dụng trên iOS 14

Nếu muốn ứng dụng Apple của mình 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ột màn hình thông báo 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, công cụ này 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 Thu thập sự đồng ý bằng tính năng gửi 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 để theo dõi thông qua tính năng 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ười dùng đó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 đồ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 hiển thị thông báo 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 Minh bạch về việc theo dõi ứng dụng.

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 đặt trong ứ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.

  1. Trong Firebase bảng điều khiển, hãy tạo một chiến dịch In-App Messaging mới.
  2. Đ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 sự kiện app_launch.
  3. Trong phần Nhắm mục tiêu, hãy đảm bảo chiến dịch chỉ nhắm mục tiêu đế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 hiển thị thông báo giải thích bằng cách làm theo hướng dẫn trong In-App Messaging tài liệu.

Không bắt buộc: Thử nghiệm A/B nhiều màn hình hiển thị thông báo giải thích

In-App Messaging có tính năng 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 nhiều màn hình hiển thị thông báo giải thích.

Firebase A/B Testing sẽ 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 nhiều biến thể của ứng dụng.

Ghi lại quyền theo dõi ứng dụng

Nếu không ghi nhật ký 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 nhật ký để đo lường các 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 nhật ký 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 các màn hình kết quả.

  • Trong phần Nhắm mục tiêu, hãy đảm bảo chiến dịch chỉ nhắm mục tiêu đế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ả mang tính kết luận.

Hãy đọc tài liệu Firebase A/B Testing để biết thông tin về cách theo dõi thử nghiệm và triển khai một biến thể thành công.