Bu sayfa, uygulamalarında Firebase için Google Analytics SDK'sını kullanan ve izin modunu entegre etmek isteyen geliştiriciler içindir. İzin moduna giriş için İzin moduna genel bakış başlıklı makaleyi inceleyin.
Google Analytics, SDK'nızın davranış şeklini kullanıcılarınızın izin durumuna göre ayarlamak için izin modunu sunar. İzin modunu temel veya gelişmiş şekilde uygulayabilirsiniz. Temel veya gelişmiş izin modunu uygulayacağınızdan emin değilseniz temel ve gelişmiş izin modu hakkında daha fazla bilgi edinin ve şirketinizin yönergelerini kontrol edin.
Başlamadan önce
Kullanıcı iznini yönetebilmek için aşağıdakileri uygulamanız gerekir:
- Firebase için Google Analytics SDK'sı
Kullanıcı iznini almak için izin ayarları banner'ı
İzin modunu ayarlama
İzin modunu ayarlamak için aşağıdakileri yapmanız gerekir:
- Kullanıcı izin vermeden önce: Analytics toplama özelliğini geçici olarak devre dışı bırakın.
- Varsayılan izin durumunu ayarlayın.
- Kullanıcının izin ayarlarınızla etkileşimine göre izin durumunu güncelleyin.
- Analytics toplama özelliğini yeniden etkinleştirin.
Analytics toplama özelliğini geçici olarak devre dışı bırakma
İzin modunun temel düzeyde uygulanması, kullanıcı izin verene kadar Firebase için Google Analytics SDK'sının yüklenmesini engellemek anlamına gelir.
Analytics toplama özelliğini geçici olarak devre dışı bırakmak için uygulamanızınInfo.plist dosyasında FIREBASE_ANALYTICS_COLLECTION_ENABLED değerini false (boolean) olarak ayarlayın. Örneğin, kaynak XML'de görüntülenen:
<key>FIREBASE_ANALYTICS_COLLECTION_ENABLED</key><false/>
Varsayılan izin durumunu ayarlama
Varsayılan olarak, izin modu değeri ayarlanmaz. Uygulamanız için varsayılan izin durumunu ayarlamak üzere:
- Uygulamanızın info.plist dosyasını açın.
İzin modu anahtar/değer çiftlerini ekleyin. Anahtar, izin türünü açıklar ve değer, izin durumunu gösterir. Değerler, iznin verildiği anlamına gelen
trueveya iznin reddedildiği anlamına gelenfalseolabilir.Avrupa Ekonomik Alanı'ndaki (AEA) trafik için izin modu güncellemeleri uyarınca,
eu_consent_policydeğeriad_user_datavead_personalizationiçin ayarlanabilir. Bu durumda, yalnızca AB kullanıcı rızası politikasına tabi bölgelerdeki kullanıcılar için izin reddedilir.Aşağıdakileri ayarlayın:
GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGEGOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGEGOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATAGOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS
Değişikliklerinizi kaydedin. Ardından, izin değerlerini güncelleme mekanizmasını uygulayın.
Örneğin, tüm parametreler için varsayılan olarak tüm izinleri verme ayarını yapmak üzere:
<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/>
Analytics toplama özelliğini yeniden etkinleştirme
Kullanıcı izin verdikten sonra setAnalyticsCollectionEnabled() örnek yöntemini kullanarak Analytics toplamayı tekrar etkinleştirin.
Yöntemle ayarlanan değer, uygulama yürütmeleri boyunca kalıcı olur ve uygulamanızın setAnalyticsCollectionEnabled dosyasındaki firebase_analytics_collection_enabled değerini geçersiz kılar.Info.plist setAnalyticsCollectionEnabled için bir değer ayarladığınızda, kullanıcı uygulamanızı kapatıp yeniden açsa bile setAnalyticsCollectionEnabled tekrar çağrılana kadar Analytics toplama işlemi bu durumda kalır.
Analytics toplama özelliğini güncellemek için:
Swift
swift
Analytics.setAnalyticsCollectionEnabled(true)
Objective-C
obj-c
[FIRAnalytics setAnalyticsCollectionEnabled:YES];
İzni güncelle
Uygulama kullanıma sunulduktan sonra izin değerlerini güncellemek için setConsent yöntemini çağırın.
setConsent yöntemiyle ayarlanan değer, varsayılan ayarı geçersiz kılar ve uygulama yürütmeleri boyunca kalıcı olur. Kullanıcı uygulamayı kapatıp yeniden açsa bile değer, setConsent tekrar çağrılana kadar bu durumda kalır.
setConsent yalnızca belirttiğiniz parametreleri günceller.
Bir kullanıcı, Analytics veya reklam depolama için daha önce verdiği izni geri çekerse Google Analytics,
ad_personalizationizni de dahil olmak üzere tüm kullanıcı özelliklerini siler. Reklam kişiselleştirme için kullanıcının rıza seçimini korumak üzeresetConsent(Swift | Obj-C) kullanarak reklam kişiselleştirme için önceki değeri geri yükleyin.
Aşağıdaki örnekte, farklı izin değerlerini granted olarak güncelleyen setConsent yöntemi gösterilmektedir:
Swift
Analytics.setConsent([
.analyticsStorage: .granted,
.adStorage: .granted,
.adUserData: .granted,
.adPersonalization: .granted,
])
Objective-C
[FIRAnalytics setConsent:@{
FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
FIRConsentTypeAdStorage : FIRConsentStatusGranted,
FIRConsentTypeAdUserData : FIRConsentStatusGranted,
FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
}];
Bir kullanıcı iznini iptal etmeye karar verirse izin durumlarını buna göre güncellediğinizden
ve setAnalyticsCollectionEnabled() kullanarak Analytics toplama özelliğini tekrar devre dışı bıraktığınızdan emin olun.
İzin modu v2'ye yükseltme
Google'ın gizliliğin korunmasını sağlayan dijital reklamcılık ekosistemine yönelik devam eden taahhüdü kapsamında, AB kullanıcı rızası politikamızın yaptırımını daha sıkı hale getiriyoruz.
Google'ın Avrupa Ekonomik Alanı'ndaki (AEA) trafik için izin modu güncellemeleri hakkında daha fazla bilgi edinin.
İzin modu kullanıcılarının, reklam depolama ve analytics depolamaya ek olarak iki yeni parametre göndermesi gerekir:
Uygulamanızın info.plist dosyasını aşağıdaki bilgileri içerecek şekilde güncelleyin:
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/> <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>İzin çağrılarınızı, reklam kullanıcı verileri ve reklam kişiselleştirme parametrelerini içerecek şekilde güncelleyin:
Swift
Analytics.setConsent([ .analyticsStorage: .granted, .adStorage: .granted, .adUserData: .granted, .adPersonalization: .granted, ])Objective-C
[FIRAnalytics setConsent:@{ FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted, FIRConsentTypeAdStorage : FIRConsentStatusGranted, FIRConsentTypeAdUserData : FIRConsentStatusGranted, FIRConsentTypeAdPersonalization : FIRConsentStatusGranted, }];
İzin ayarlarını doğrulayın
Uygulamanızın Xcode hata ayıklama konsolunu görüntüleyerek izin ayarlarınızın beklendiği gibi çalıştığını doğrulayabilirsiniz.
Şu adımları uygulayın:
- Cihazınızda ayrıntılı günlük kaydını etkinleştirin.
Xcode hata ayıklama konsolunda şunları arayın:
ad_storageanalytics_storagead_user_dataad_personalization
Örneğin, reklam depolama alanı etkinse aşağıdaki mesajı görürsünüz:
ad_storage is granted.