Google AB Kullanıcı Rızası Politikası uyarınca Avrupa Ekonomik Alanı'ndaki (AEA) kullanıcılarınıza Birleşik Krallık ile birlikte belirli açıklamalar yapmanız ve yasal olarak gerekli olduğu durumlarda çerez veya başka yerel depolama bilgilerinin yanı sıra reklam yayınlamak için kişisel verileri (AdID gibi) kullanma konusunda izin almanız gerekir. Bu politika AB eGizlilik Yönergesi ve Genel Veri Koruma Yönetmeliği'nin (GDPR) şartlarını yansıtmaktadır.
Google, yayıncıları bu politika kapsamındaki gereksinimleri yerine getirmeleri konusunda desteklemek için Kullanıcı Mesajlaşma Platformu (UMP) SDK'sını sunmaktadır. UMP SDK'sı, en yeni IAB standartlarını destekleyecek şekilde güncellendi. Tüm bu yapılandırmalar artık gizlilik ve mesajlaşma AdMob özelliğiyle kolayca yönetilebilir.
Ön koşullar
- Başlangıç kılavuzunu tamamlayın.
- Mesajlarınızı,AdMob hesabınızın Gizlilik ve mesajlaşma sekmesi altında yapılandırın. Daha fazla bilgi için Gizlilik ve mesajlaşma hakkında,
- GDPR ile ilgili koşullar üzerinde çalışıyorsanız IAB şartları AB kullanıcı rızası alma mesajlarını nasıl etkiler? başlıklı makaleyi okuyun.
Kullanıcı mesajı türleri
Desteklenen mesajların tam listesi için Kullanıcı mesajı türleri bölümüne göz atın. Her bir mesaj türünün uygulanmasıyla ilgili talimatlar için sol gezinme çubuğuna bakın.
Bir mesajın gösterilmesi gerekip gerekmediğini belirleme
Bir form yüklemeden önce, Update()
uygulamanın ilk aşamasında kullanıcının izin bilgilerinin güncellenmesi için istekte bulunmanız gerekir.
Bu, kullanıcılarınızın henüz izin vermemiş olmaları veya izinlerinin süresinin dolduğu durumlarda izin vermeleri gerekip gerekmediğini belirleyebilir.
ConsentInformation
nesnede depolanan bilgileri kullanın.
Uygulama başlatıldığında durumun nasıl kontrol edileceğine dair bir örneği aşağıda bulabilirsiniz:
using System.Collections.Generic;
using UnityEngine;
using GoogleMobileAds.Ump;
using GoogleMobileAds.Ump.Api;
public class UmpManager : MonoBehaviour
{
void Start()
{
// Set tag for under age of consent.
// Here false means users are not under age.
ConsentRequestParameters request = new ConsentRequestParameters
{
TagForUnderAgeOfConsent = false,
};
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
void OnConsentInfoUpdated(FormError error)
{
if (error != null)
{
// Handle the error.
UnityEngine.Debug.LogError(error);
return;
}
// If the error is null, the consent information state was updated.
// You are now ready to check if a form is available.
}
}
Varsa form yükleyin
Bir form görüntülemeden önce kullanılabilir olup olmadığını belirlemeniz gerekir. Kullanılamayan formlar, kullanıcının sınırlı reklam izlemeyi etkinleştirmesinden veya reşit olma yaşından küçük olarak etiketlemesinden kaynaklanabilir.
Bir formun kullanılabilirliğini kontrol etmek için daha öncethe IsConsentFormAvailable()
method on the ConsentInformation
instance oluşturduğunuz formu kullanın.
Ardından, formu yüklemek için bir sarmalayıcı yöntemi ekleyin:
void OnConsentInfoUpdated(FormError error)
{
if (error != null)
{
// Handle the error.
UnityEngine.Debug.LogError(error);
return;
}
// If the error is null, the consent information state was updated.
// You are now ready to check if a form is available.
if (ConsentInformation.IsConsentFormAvailable())
{
LoadConsentForm();
}
}
void LoadConsentForm()
{
// Loads a consent form.
}
Formu yüklemek için the static Load()
method on the ConsentForm
classkullanın.
private ConsentForm _consentForm;
void LoadConsentForm()
{
// Loads a consent form.
ConsentForm.Load(OnLoadConsentForm);
}
void OnLoadConsentForm(ConsentForm consentForm, FormError error)
{
if (error != null)
{
// Handle the error.
UnityEngine.Debug.LogError(error);
return;
}
// The consent form was loaded.
// Save the consent form for future requests.
_consentForm = consentForm;
// You are now ready to show the form.
}
Gerekirse formu gönderin
Formun kullanılabilirliğini belirledikten ve yükledikten sonra, formu sunmak içinConsentForm
örneğindekiShow()
yöntemini kullanın.
Önceki nesnedenConsentInformation
nesnesini kullanarakconsent status yönteminiLoadForm()
güncelleyin:
void LoadForm()
{
// Loads a consent form.
ConsentForm.Load(OnLoadConsentForm);
}
void OnLoadConsentForm(ConsentForm consentForm, FormError error)
{
if (error != null)
{
// Handle the error.
UnityEngine.Debug.LogError(error);
return;
}
// The consent form was loaded.
// Save the consent form for future requests.
_consentForm = consentForm;
// You are now ready to show the form.
if(ConsentInformation.ConsentStatus == ConsentStatus.Required)
{
_consentForm.Show(OnShowForm);
}
}
void OnShowForm(FormError error)
{
if (error != null)
{
// Handle the error.
UnityEngine.Debug.LogError(error);
return;
}
// Handle dismissal by reloading form.
LoadForm();
}
Kullanıcı bir seçim yaptıktan veya formu kapattıktan sonra herhangi bir işlem yapmanız gerekiyorsa bu mantığı formunuzun tamamlanma işleyicisine veya geri çağırmasına yerleştirin.
Test
Coğrafi konumu zorunlu kılma
UMP SDK'sı, cihaz the DebugGeography
field on ConsentDebugSettings
kullanılarak AEA veya Birleşik Krallık'taymış gibi uygulamanızın davranışını test etmek için bir yol sağlar.
Hata ayıklama işlevini kullanmak için uygulamanızın hata ayıklama ayarlarında test cihazınızın karma oluşturma işlemi uygulanmış kimliğini sağlamanız gerekir. Bu değeri ayarlamadanUpdate()
yöntemini çağırırsanız uygulamanız, çalıştırıldığında gerekli kimlik karmasını günlüğe kaydeder.
void Start()
{
var debugSettings = new ConsentDebugSettings
{
// Geography appears as in EEA for debug devices.
DebugGeography = DebugGeography.EEA,
TestDeviceHashedIds = new List<string>
{
"TEST-DEVICE-HASHED-ID"
}
};
// Set tag for under age of consent.
// Here false means users are not under age.
ConsentRequestParameters request = new ConsentRequestParameters
{
TagForUnderAgeOfConsent = false,
ConsentDebugSettings = debugSettings,
};
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
DebugGeography
enumile coğrafi konumu aşağıdaki seçeneklerden birine zorunlu kılma seçeneğiniz vardır:
Hata Ayıklama Coğrafyası | Açıklama |
---|---|
DISABLED |
Hata ayıklama coğrafyası devre dışı bırakıldı. |
EEA |
Konum, hata ayıklama cihazları için AEA'da olduğu gibi görünür. |
Not_EEA |
Hata ayıklama cihazları için AEA'da coğrafi konum olarak görünmez. |
Hata ayıklama ayarlarının yalnızca test cihazlarında çalıştığını unutmayın. Testler varsayılan olarak etkinleştirilmiş olduğundan emülatörlerin cihaz kimliği listenize eklenmesi gerekmez.
İzin durumunu sıfırla
UMP SDK'sıyla uygulamanızı test ederken, bir kullanıcının ilk yükleme deneyimini simüle etmek için SDK durumunu sıfırlamanız yararlı olabilir.
SDK, bunu yapmanıza Reset()
yönergeyi sağlar.
ConsentInformation.Reset();
Ayrıca, UMP SDK'sını projenizden tamamen kaldırmaya
karar verirseniz Reset()
işlevini de çağırmanız gerekir.