Menginisialisasi aplikasi dengan rantai mediasi waterfall yang panjang dan beberapa adaptor pihak ketiga dapat meningkatkan latensi permintaan iklan untuk tayangan penting yang ditampilkan pertama kali dalam sesi pengguna. Peningkatan latensi tayangan pertama ini dapat mencegah iklan ditampilkan karena permintaan iklan belum menampilkan respons.
Panduan ini membahas hal berikut untuk mengurangi latensi tayangan pertama dalam sesi aplikasi Anda:
- Menetapkan waktu tunggu inisialisasi
- Menghapus sumber iklan waterfall dari permintaan pertama Anda
- Meningkatkan performa pada tayangan yang tidak terlalu sensitif terhadap waktu
Sebelum memulai
Sebelum melanjutkan, siapkan Google Mobile Ads SDK (Legacy).
Menetapkan waktu tunggu inisialisasi
Untuk menghindari hilangnya peluang tayangan, tetapkan waktu tunggu inisialisasi. Pendekatan ini mencegah aplikasi Anda melebihi batas waktu yang Anda tentukan. Anda dapat melanjutkan panggilan iklan setelah batas waktu yang Anda tetapkan, atau setelah inisialisasi selesai.
Contoh berikut menetapkan waktu tunggu inisialisasi selama lima detik:
Kotlin
// Set up a CONFLATED channel that only buffers the latest event.
private val adLoadChannel = Channel<Unit>(Channel.CONFLATED)
fun initialize(context: Context) {
// Coroutine to handle the 5-second timeout.
CoroutineScope(Dispatchers.Default).launch {
delay(5000L)
// 5 second timer elapsed
adLoadChannel.trySend(Unit)
}
// Coroutine to call MobileAds.initialize() on a background thread.
CoroutineScope(Dispatchers.IO).launch {
MobileAds.initialize(context) {
// Mobile Ads SDK initialization finished.
adLoadChannel.trySend(Unit)
}
}
// Coroutine to listen for init complete or timer, whichever comes first.
CoroutineScope(Dispatchers.Main).launch {
// Wait on the first event.
adLoadChannel.receive()
loadAd()
// Close the channel after receiving the first event.
adLoadChannel.close()
}
}
Menghapus sumber iklan waterfall pada permintaan pertama Anda
Untuk menayangkan iklan tanpa latensi tambahan dari sumber iklan waterfall, terapkan segmentasi kunci-nilai untuk menghapus sumber iklan waterfall pada panggilan iklan pertama Anda. Selesaikan langkah-langkah berikut:
- Buat grup mediasi dan tambahkan sumber iklan bidding.
- Tambahkan segmentasi nilai kunci ke
grup mediasi khusus bidding baru Anda menggunakan kunci
latencydan nilailow. - Prioritaskan grup mediasi khusus bidding baru Anda di atas grup mediasi utama di UI. Untuk menyesuaikan urutan, ubah prioritas grup mediasi.
Dalam permintaan iklan pertama Anda, sertakan pasangan nilai kunci penargetan kustom:
Kotlin
val request = AdRequest.Builder() .addCustomTargeting("latency", "low") .build()Java
AdRequest request = new AdRequest.Builder() .addCustomTargeting("latency", "low") .build();Uji penyiapan segmentasi nilai kunci untuk memverifikasi bahwa Anda menargetkan grup mediasi khusus bidding baru dengan benar.
Meningkatkan performa pada tayangan yang tidak terlalu sensitif terhadap waktu
Untuk meningkatkan performa pada tayangan yang tidak terlalu sensitif terhadap waktu, seperti iklan yang tidak perlu ditampilkan tepat saat peluncuran aplikasi, gunakan pramuat iklan dengan panggilan iklan yang tidak menargetkan grup mediasi khusus bidding.