Mulai

Panduan ini menunjukkan cara mengintegrasikan adaptor mediasi dengan aplikasi Android Anda.

Prasyarat

Sebelum dapat mengintegrasikan mediasi untuk format iklan, Anda perlu mengintegrasikan format iklan tersebut ke dalam aplikasi:

Baru mengenal mediasi? Baca Pengantar mediasi.

Untuk bidding: Google Mobile Ads SDK 18.3.0 atau yang lebih tinggi.

Menginisialisasi Mobile Ads SDK

Panduan memulai cepat menunjukkan cara melakukan inisialisasi Mobile Ads SDK. Selama panggilan inisialisasi tersebut, adaptor mediasi juga diinisialisasi. Anda harus menunggu hingga inisialisasi selesai sebelum memuat iklan. Tindakan ini diperlukan untuk memastikan partisipasi penuh dari setiap jaringan iklan pada permintaan iklan pertama.

Kode contoh berikut menunjukkan cara memeriksa status inisialisasi setiap adaptor sebelum membuat permintaan iklan.

Java

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        new Thread(
                () ->
                    // Initialize the Google Mobile Ads SDK on a background thread.
                    MobileAds.initialize(
                        this,
                        initializationStatus -> {
                          Map<String, AdapterStatus> statusMap =
                              initializationStatus.getAdapterStatusMap();
                          for (String adapterClass : statusMap.keySet()) {
                            AdapterStatus status = statusMap.get(adapterClass);
                            Log.d(
                                "MyApp",
                                String.format(
                                    "Adapter name: %s, Description: %s, Latency: %d",
                                    adapterClass, status.getDescription(), status.getLatency()));
                          }
                          // Start loading ads here...
                        }))
            .start();
    }
}

Kotlin

import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch

class MainActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    val backgroundScope = CoroutineScope(Dispatchers.IO)
    backgroundScope.launch {
      // Initialize the Google Mobile Ads SDK on a background thread.
      MobileAds.initialize(this@MainActivity) { initializationStatus ->
        val statusMap =
          initializationStatus.adapterStatusMap
        for (adapterClass in statusMap.keys) {
          val status = statusMap[adapterClass]
          Log.d(
            "MyApp", String.format(
              "Adapter name: %s, Description: %s, Latency: %d",
              adapterClass, status!!.description, status.latency
            )
          )
        }
        // Start loading ads here...
      }
    }
  }
}

Memeriksa kelas adaptor jaringan iklan mana yang memuat iklan

Berikut adalah beberapa kode contoh yang mencatat nama kelas jaringan iklan untuk iklan banner:

Java

public void onAdLoaded() {
  Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}

Kotlin

override fun onAdLoaded() {
  Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}

Lihat dokumentasi ResponseInfo di getMediationAdapterClassName() untuk detail tentang metode ini.

Menginisialisasi objek iklan dengan instance Aktivitas

Dalam konstruktor untuk objek iklan baru (misalnya, AdManagerAdView), Anda harus meneruskan objek dari jenis Context. Context ini diteruskan ke jaringan iklan lain saat menggunakan mediasi. Beberapa jaringan iklan memerlukan Context yang lebih ketat dengan jenis Activity dan mungkin tidak dapat menayangkan iklan tanpa instance Activity. Oleh karena itu, sebaiknya teruskan instance Activity saat melakukan inisialisasi objek iklan untuk memastikan pengalaman yang konsisten dengan jaringan iklan yang dimediasi.

Menggunakan iklan banner dengan mediasi

Pastikan untuk menonaktifkan muat ulang di semua UI sumber iklan pihak ketiga untuk unit iklan banner yang digunakan dalam mediasi. Hal ini mencegah refresh ganda karena Ad Manager juga memicu pemuatan ulang berdasarkan kecepatan refresh unit iklan banner Anda.

Menggunakan iklan native dengan mediasi

Berikut adalah beberapa praktik terbaik yang perlu dipertimbangkan saat menerapkan mediasi native.

Kebijakan presentasi iklan Native
Setiap jaringan iklan memiliki kebijakannya sendiri. Saat menggunakan mediasi, penting untuk diingat bahwa aplikasi Anda masih harus mematuhi kebijakan jaringan yang dimediasi yang menyediakan iklan.
Gunakan loadAd(), bukan loadAds()
Metode loadAds() hanya menayangkan iklan Google. Untuk iklan yang dimediasi, gunakan loadAd().

Hukum privasi negara bagian Amerika Serikat dan GDPR

Jika Anda harus mematuhi hukum privasi negara bagian Amerika Serikat atau General Data Protection Peraturan (GDPR), ikuti langkah-langkah di setelan peraturan negara bagian Amerika Serikat atau setelan GDPR untuk menambahkan partner mediasi Anda di negara bagian AS atau daftar partner iklan GDPR Ad Manager. Jika hal ini tidak dilakukan, partner dapat gagal menayangkan iklan di aplikasi Anda.

Pelajari lebih lanjut cara mengaktifkan pemrosesan data yang dibatasi (RDP) dan mendapatkan izin GDPR dengan Google User Messaging Platform (UMP) SDK.