Thiết lập chế độ đồng ý cho ứng dụng

Trang này dành cho những nhà phát triển sử dụng SDK Google Analytics cho Firebase trong ứng dụng của họ và muốn tích hợp chế độ đồng ý. Để biết giới thiệu về chế độ đồng ý, hãy đọc bài viết Tổng quan về chế độ đồng ý.

Google Analytics cung cấp chế độ đồng ý để điều chỉnh cách hoạt động của SDK dựa trên trạng thái đồng ý của người dùng. Bạn có thể triển khai chế độ đồng ý theo cách cơ bản hoặc nâng cao. Nếu bạn không biết nên triển khai chế độ đồng ý cơ bản hay nâng cao, hãy tìm hiểu thêm về chế độ đồng ý cơ bản và nâng cao và tham khảo các nguyên tắc của công ty.

Trước khi bắt đầu

Trước khi có thể quản lý sự đồng ý của người dùng, bạn cần triển khai:

  • SDK Google Analytics cho Firebase
  • Biểu ngữ về chế độ cài đặt lấy sự đồng ý để thu thập sự đồng ý của người dùng

Để thiết lập chế độ đồng ý, bạn cần phải:

  1. Trước khi người dùng đồng ý: Tạm thời tắt tính năng thu thập Analytics.
  2. Đặt trạng thái đồng ý mặc định.
  3. Cập nhật trạng thái đồng ý dựa trên hoạt động tương tác của người dùng với chế độ cài đặt về sự đồng ý của bạn.
  4. Bật lại tính năng thu thập Analytics.

Tạm thời vô hiệu hoá thu thập Analytics

Cách triển khai cơ bản của chế độ đồng ý có nghĩa là chặn không cho SDK Google Analytics cho Firebase tải cho đến khi người dùng đồng ý.

Để tạm thời tắt tính năng thu thập Analytics, hãy đặt giá trị FIREBASE_ANALYTICS_COLLECTION_ENABLED thành false (boolean) trong tệp Info.plist của ứng dụng. Ví dụ như được xem trong XML nguồn:

<key>FIREBASE_ANALYTICS_COLLECTION_ENABLED</key><false/>

Theo mặc định, hệ thống không đặt giá trị nào cho chế độ đồng ý. Cách đặt trạng thái đồng ý mặc định cho ứng dụng:

  1. Mở tệp info.plist của ứng dụng.
  2. Thêm cặp khoá-giá trị của chế độ đồng ý. Khoá mô tả loại đồng ý và giá trị cho biết trạng thái đồng ý. Giá trị có thể là true, nghĩa là người dùng đã đồng ý hoặc false, nghĩa là người dùng đã từ chối.

    Theo nội dung cập nhật đối với chế độ đồng ý cho lưu lượng truy cập ở Khu vực kinh tế Châu Âu (EEA), bạn có thể đặt giá trị eu_consent_policy cho ad_user_dataad_personalization, nghĩa là chỉ bị từ chối đối với những người dùng ở những khu vực tuân thủ Chính sách về sự đồng ý của người dùng ở Liên minh Châu Âu.

    Thiết lập các mục sau:

    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS
  3. Lưu các thay đổi. Tiếp theo, hãy triển khai cơ chế cập nhật giá trị đồng ý.

Ví dụ: để đặt tất cả trạng thái đồng ý cho tất cả thông số theo mặc định, hãy làm như sau:

<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>

Bật lại tính năng thu thập Analytics

Sau khi người dùng đồng ý, hãy bật lại tính năng thu thập của Analytics bằng phương thức bản sao setAnalyticsCollectionEnabled().

Giá trị do phương thức setAnalyticsCollectionEnabled đặt sẽ vẫn tồn tại trong các quá trình thực thi ứng dụng và ghi đè giá trị cho firebase_analytics_collection_enabled trong tệp Info.plist của ứng dụng. Sau khi bạn đặt giá trị cho setAnalyticsCollectionEnabled, bộ sưu tập Analytics sẽ vẫn ở trạng thái đó cho đến khi setAnalyticsCollectionEnabled được gọi lại, ngay cả khi người dùng đóng và mở lại ứng dụng của bạn.

Cách cập nhật tập hợp báo cáo trong Analytics:

Swift

swift Analytics.setAnalyticsCollectionEnabled(true)

Objective-C

obj-c [FIRAnalytics setAnalyticsCollectionEnabled:YES];

Để cập nhật giá trị đồng ý sau khi phát hành một ứng dụng, hãy gọi phương thức setConsent.

Giá trị do phương thức setConsent đặt sẽ ghi đè chế độ cài đặt mặc định và duy trì trong các quá trình thực thi ứng dụng. Giá trị vẫn ở trạng thái đó cho đến khi setConsent được gọi lại, ngay cả khi người dùng đóng và mở lại ứng dụng. setConsent chỉ cập nhật các tham số mà bạn chỉ định.

Nếu một người dùng rút lại sự đồng ý trước đó đối với Analytics hoặc Bộ nhớ quảng cáo, thì Google Analytics sẽ xoá tất cả các thuộc tính người dùng, bao gồm cả sự đồng ý đối với ad_personalization. Để lưu giữ lựa chọn đồng ý của người dùng đối với hoạt động cá nhân hoá quảng cáo, hãy khôi phục giá trị trước đó cho hoạt động cá nhân hoá quảng cáo bằng cách sử dụng setConsent (Swift | Obj-C) .

Ví dụ sau đây cho thấy phương thức setConsent cập nhật các giá trị đồng ý khác nhau thành granted:

Swift

Analytics.setConsent([
  .analyticsStorage: .granted,
  .adStorage: .granted,
  .adUserData: .granted,
  .adPersonalization: .granted,
])

Objective-C

[FIRAnalytics setConsent:@{
FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
FIRConsentTypeAdStorage : FIRConsentStatusGranted,
FIRConsentTypeAdUserData : FIRConsentStatusGranted,
FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
}];

Nếu người dùng quyết định thu hồi sự đồng ý, hãy nhớ cập nhật các trạng thái đồng ý cho phù hợp và tắt tính năng thu thập Analytics bằng setAnalyticsCollectionEnabled().

Để thực hiện cam kết không ngừng xây dựng một hệ sinh thái quảng cáo kỹ thuật số đảm bảo quyền riêng tư, Google đang tăng cường việc thực thi Chính sách về sự đồng ý của người dùng ở Liên minh Châu Âu.

Tìm hiểu thêm về Nội dung cập nhật của Google đối với chế độ đồng ý cho lưu lượng truy cập ở Khu vực kinh tế Châu Âu (EEA).

Ngoài việc lưu trữ quảng cáo và số liệu phân tích, người dùng ở chế độ đồng ý cần gửi 2 thông số mới:

  1. Cập nhật tệp info.plist của ứng dụng để bao gồm:

    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>
    
  2. Cập nhật lệnh gọi lấy sự đồng ý để thêm các thông số cho dữ liệu người dùng quảng cáo và hoạt động cá nhân hoá quảng cáo:

    Swift

    Analytics.setConsent([
    .analyticsStorage: .granted,
    .adStorage: .granted,
    .adUserData: .granted,
    .adPersonalization: .granted,
    ])
    

    Objective-C

    [FIRAnalytics setConsent:@{
      FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdUserData : FIRConsentStatusGranted,
      FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
    }];
    

Bạn có thể xác minh rằng các chế độ cài đặt về sự đồng ý đang hoạt động như dự kiến bằng cách xem bảng điều khiển gỡ lỗi Xcode cho ứng dụng của bạn.

Hãy làm theo các bước sau:

  1. Bật tính năng ghi nhật ký chi tiết trên thiết bị của bạn.
  2. Trong bảng điều khiển gỡ lỗi của Xcode, hãy tìm:

    • ad_storage
    • analytics_storage
    • ad_user_data
    • ad_personalization

    Ví dụ: nếu Bộ nhớ quảng cáo được bật, bạn sẽ thấy thông báo sau:

    ad_storage is granted.