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 ý. Để tìm hiểu 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 chắc 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à kiểm tra 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ữ chế độ cài đặt lấy sự đồng ý để ghi nhận sự đồng ý của người dùng
Thiết lập chế độ đồng ý
Để thiết lập chế độ đồng ý, bạn cần:
- Trước khi người dùng đồng ý: Tạm thời tắt tính năng thu thập sự đồng ý của Analytics.
- Đặt trạng thái đồng ý mặc định.
- 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 lấy sự đồng ý của bạn.
- Bật lại tính năng thu thập dữ liệu trong Analytics.
Tạm thời vô hiệu hoá tính năng thu thập dữ liệu Analytics
Cách triển khai cơ bản của chế độ đồng ý có nghĩa là chặn 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
trong AndroidManifest.xml
của ứng dụng trong thẻ ứng dụng. Ví dụ:
<meta-data android:name="firebase_analytics_collection_enabled" android:value="false" />
Đặt trạng thái đồng ý mặc định
Theo mặc định, không có giá trị nào của chế độ đồng ý được đặt. Cách đặt trạng thái đồng ý mặc định cho ứng dụng của bạn:
- Mở tệp AndroidManifest.xml của ứng dụng.
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 ý. Các giá trị có thể là
true
, nghĩa là người dùng đã đồng ý hoặcfalse
(tức là người dùng đã từ chối đồng ý). Hãy thiết lập như 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
Lưu các thay đổi. Tiếp theo, hãy triển khai cơ chế cập nhật các giá trị đồng ý.
Ví dụ: để đặt tất cả trạng thái đồng ý cấp quyền cho tất cả thông số theo mặc định:
<meta-data android:name="google_analytics_default_allow_analytics_storage" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_storage" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_user_data" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_personalization_signals" android:value="true" />
Bật lại tính năng thu thập dữ liệu 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ứcsetAnalyticsCollectionEnabled()
.
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 AndroidManifest.xml
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ách cập nhật tập hợp báo cáo trong Analytics:
setAnalyticsCollectionEnabled(true);
Cập nhật sự đồng ý
Để cập nhật các giá trị về sự đồng ý sau khi một ứng dụng chạy, 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à vẫn tồn tại trong 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 người dùng rút lại sự đồng ý đã cho 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
. Để giữ lại lựa chọn đồng ý của người dùng cho 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ụngsetConsent
(Kotlin+KTX | Java) .
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
:
Java
// Set consent types.
Map<ConsentType, ConsentStatus> consentMap = new EnumMap<>(ConsentType.class);
consentMap.put(ConsentType.ANALYTICS_STORAGE, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_STORAGE, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_USER_DATA, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_PERSONALIZATION, ConsentStatus.GRANTED);
mFirebaseAnalytics.setConsent(consentMap);
Kotlin
Firebase.analytics.setConsent {
analyticsStorage(ConsentStatus.GRANTED)
adStorage(ConsentStatus.GRANTED)
adUserData(ConsentStatus.GRANTED)
adPersonalization(ConsentStatus.GRANTED)
}