Ta strona jest przeznaczona dla deweloperów, którzy używają w swojej aplikacji pakietu SDK Google Analytics dla Firebase i chcą zintegrować tryb uzyskiwania zgody. Wprowadzenie do trybu uzyskiwania zgody znajdziesz w omówieniu trybu uzyskiwania zgody.
Google Analytics udostępnia tryb uzyskiwania zgody, który pozwala dostosowywać działanie pakietu SDK na podstawie stanu zgody użytkowników. Tryb uzyskiwania zgody możesz wdrożyć w sposób podstawowy lub zaawansowany. Jeśli nie wiesz, czy wdrożyć podstawowy czy zaawansowany tryb uzyskiwania zgody, dowiedz się więcej o podstawowym i zaawansowanym trybie uzyskiwania zgody i zapoznaj się z wytycznymi obowiązującymi w Twojej firmie.
Zanim zaczniesz
Aby zarządzać zgodą użytkowników, musisz zaimplementować:
- Pakiet SDK Google Analytics dla Firebase
Baner z ustawieniami uzyskiwania zgody użytkowników na przetwarzanie danych
Konfigurowanie trybu uzyskiwania zgody
Aby skonfigurować tryb uzyskiwania zgody:
- Zanim użytkownik udzieli zgody: tymczasowo wyłącz zbieranie danych przez Analytics.
- Ustaw domyślny stan zgody użytkownika.
- Zaktualizuj stan zgody użytkownika na podstawie interakcji użytkownika z Twoimi ustawieniami uzyskiwania zgody.
- Ponownie włącz zbieranie danych przez Analytics.
Tymczasowe wyłączenie zbierania danych przez Analytics
Podstawowa implementacja trybu uzyskiwania zgody oznacza zablokowanie wczytywania pakietu SDK Google Analytics dla Firebase do czasu udzielenia zgody przez użytkownika.
Aby tymczasowo wyłączyć gromadzenie danych przez Analytics, ustaw wartość firebase_analytics_collection_enabled
na false
w tagu AndroidManifest.xml
aplikacji w tagu aplikacji. Na przykład:
<meta-data android:name="firebase_analytics_collection_enabled" android:value="false" />
Ustawianie domyślnego stanu zgody użytkownika
Domyślnie nie są ustawione żadne wartości trybu uzyskiwania zgody. Aby ustawić domyślny stan zgody użytkownika w aplikacji:
- Otwórz plik AndroidManifest.xml aplikacji.
Dodaj pary klucz-wartość trybu uzyskiwania zgody. Klucz opisuje typ zgody, a wartość wskazuje stan zgody. Wartościami mogą być
true
, co oznacza, że użytkownik wyraził zgodę, lubfalse
, co oznacza, że użytkownik nie wyraził zgody. Ustaw te opcje: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
Zapisz zmiany. Następnie zaimplementuj mechanizm aktualizowania wartości dotyczących zgody użytkownika.
Aby na przykład skonfigurować domyślnie wszystkie prośby o zgodę na przetwarzanie danych dotyczące wszystkich parametrów:
<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" />
Ponownie włącz zbieranie danych w Analytics
Gdy użytkownik udzieli zgody, ponownie włącz zbieranie danych przez Analytics za pomocą metodysetAnalyticsCollectionEnabled()
.
Wartość ustawiona przez metodę setAnalyticsCollectionEnabled
pozostaje bez zmian po wszystkich uruchomieniach aplikacji i zastępuje wartość FIREBASE_ANALYTICS_COLLECTION_ENABLED
w pliku AndroidManifest.xml
aplikacji. Gdy ustawisz wartość setAnalyticsCollectionEnabled
, kolekcja Analytics pozostanie w tym stanie do momentu ponownego wywołania setAnalyticsCollectionEnabled
, nawet jeśli użytkownik zamknie i ponownie otworzy Twoją aplikację.
Aby zaktualizować kolekcję Analytics:
setAnalyticsCollectionEnabled(true);
Zaktualizuj zgodę użytkownika
Aby zaktualizować wartości zgody po uruchomieniu aplikacji, wywołaj metodę setConsent
.
Wartość ustawiona przez metodę setConsent
zastępuje ustawienie domyślne i jest stosowana przez wszystkie uruchomienia aplikacji. Wartość pozostaje w tym stanie do chwili ponownego wywołania funkcji setConsent
, nawet jeśli użytkownik zamknie i ponownie otworzy aplikację.
setConsent
aktualizuje tylko określone przez Ciebie parametry.
Jeśli użytkownik wycofa wcześniej udzielone zgody na korzystanie z Analytics lub przechowywania danych w Google Ads, Google Analytics usunie wszystkie właściwości użytkownika, w tym zgodę na przetwarzanie danych
ad_personalization
. Aby zachować wybór użytkownika dotyczący zgody użytkownika na personalizację reklam, przywróć poprzednią wartość na potrzeby personalizacji reklam za pomocą poleceniasetConsent
(Kotlin+KTX | Java) .
Poniższy przykład pokazuje, jak metoda setConsent
aktualizuje różne wartości zgody na 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)
}