Berdasarkan Kebijakan Izin Pengguna Uni Eropa Google, Anda harus membuat pengungkapan tertentu kepada pengguna di Wilayah Ekonomi Eropa (EEA) bersama dengan Inggris Raya dan mendapatkan izin dari mereka untuk menggunakan cookie atau penyimpanan lokal lainnya, jika diwajibkan secara hukum, dan untuk menggunakan data pribadi (seperti AdID) guna menayangkan iklan. Kebijakan ini mencerminkan persyaratan dalam ePrivacy Directive dan General Data Protection Regulation (GDPR) Uni Eropa.
Untuk mendukung penayang dalam memenuhi kewajibannya berdasarkan kebijakan ini, Google menawarkan User Messaging Platform (UMP) SDK. UMP SDK telah diupdate untuk mendukung standar IAB terbaru. Semua konfigurasi ini sekarang dapat ditangani dengan mudah dalam AdMob privasi & pesan.
Prasyarat
- Selesaikan panduan Memulai.
- Konfigurasikan pesan Anda pada tab Privasi & pesan di akunAdMob Anda. Untuk mengetahui detail selengkapnya, baca Tentang privasi dan fitur pesan,
- Jika Anda sedang mengerjakan persyaratan terkait GDPR, baca Pengaruh persyaratan IAB terhadap pesan izin Uni Eropa.
Jenis pesan pengguna
Lihat Jenis pesan pengguna untuk mengetahui daftar lengkap pesan yang didukung. Untuk petunjuk spesifik cara menerapkan setiap jenis pesan, lihat menu navigasi sebelah kiri.
Menentukan apakah pesan perlu ditampilkan
Anda harus meminta pembaruan informasi izin pengguna di setiap peluncuran
aplikasi, menggunakan Update()
sebelum memuat formulir.
Hal ini dapat menentukan apakah pengguna perlu memberikan izin jika
belum melakukannya atau sudah berakhir.
ConsentInformation
saat Anda mempresentasikan formulir jika diperlukan.
Berikut adalah contoh cara memeriksa status saat aplikasi dimulai:
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.
}
}
Memuat formulir jika tersedia
Sebelum menampilkan formulir, pertama-tama Anda harus menentukan apakah formulir tersedia. Formulir yang tidak tersedia dapat disebabkan oleh pengguna yang mengaktifkan pelacakan iklan terbatas atau jika Anda telah memberinya tag sebagai di bawah usia dewasa.
Untuk memeriksa ketersediaan formulir, gunakan
the IsConsentFormAvailable()
method on the ConsentInformation
instance yang Anda buat sebelumnya.
Kemudian, tambahkan metode wrapper untuk memuat formulir:
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.
}
Untuk memuat formulir, gunakan the static Load()
method on the ConsentForm
class.
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.
}
Presentasikan formulir jika diperlukan
Setelah Anda menentukan ketersediaan formulir dan memuatnya, gunakan metode
Show()
pada
instanceConsentForm
untuk menyajikan formulir.
Gunakan objek
ConsentInformation
dari sebelumnya untuk memeriksa
consent status dan mengupdate
metodeLoadForm()
Anda:
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();
}
Jika Anda perlu melakukan tindakan setelah pengguna membuat pilihan atau menutup formulir, tempatkan logika tersebut di pengendali penyelesaian atau callback untuk formulir Anda.
Pengujian
Memaksa geografi
UMP SDK menyediakan cara untuk menguji perilaku aplikasi Anda seolah-olah perangkat berada
di EEA atau Inggris Raya menggunakan the DebugGeography
field on ConsentDebugSettings
.
Anda harus memberikan ID yang di-hash perangkat pengujian di setelan debug aplikasi untuk
menggunakan fungsi debug. Jika Anda memanggilUpdate()
tanpa menetapkan nilai ini, aplikasi Anda akan mencatat hash ID yang diperlukan saat berjalan.
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);
}
Dengan DebugGeography
enum, Anda memiliki opsi untuk
memaksa geografi ke salah satu opsi ini:
DebugGeografi | Deskripsi |
---|---|
DISABLED |
Debug geografi dinonaktifkan. |
EEA |
Geografi muncul seperti di EEA untuk perangkat debug. |
Not_EEA |
Geografi muncul sebagai tidak berada di EEA untuk perangkat debug. |
Perhatikan bahwa setelan debug hanya berfungsi pada perangkat pengujian. Emulator tidak perlu ditambahkan ke daftar ID perangkat Anda karena pengujian sudah diaktifkan secara default.
Reset status izin
Dalam menguji aplikasi dengan UMP SDK, sebaiknya reset
status SDK agar Anda dapat menyimulasikan pengalaman penginstalan pertama pengguna.
SDK menyediakan Reset()
metode untuk melakukannya.
ConsentInformation.Reset();
Anda juga harus memanggil Reset()
jika memutuskan untuk menghapus UMP SDK sepenuhnya dari project Anda.