Inizia

Questa guida mostra come integrare un adattatore di mediazione con App per Android.

Prerequisiti

Prima di poter integrare la mediazione per un formato dell'annuncio, devi integrare questo formato. formato dell'annuncio nella tua app:

Non hai mai utilizzato la mediazione? Letto Introduzione alla mediazione.

Per l'asta: SDK Google Mobile Ads 18.3.0 o superiore.

Inizializzare l'SDK Mobile Ads

La guida rapida illustra come inizializzare l'SDK Mobile Ads. Durante la chiamata di inizializzazione, vengono inizializzati anche gli adattatori di mediazione. È importante attendere il completamento dell'inizializzazione prima di si caricano gli annunci per garantire la piena partecipazione di ogni rete pubblicitaria la prima richiesta di annuncio.

Il seguente codice campione mostra come controllare l'inizializzazione di ogni adattatore prima di effettuare una richiesta di annuncio.

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...
      }
    }
  }
}

Verificare quale classe dell'adattatore di rete pubblicitaria ha caricato l'annuncio

Di seguito è riportato un esempio di codice che registra il nome della classe della rete pubblicitaria per un annuncio 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)
}

Consulta la documentazione di ResponseInfo su getMediationAdapterClassName() per informazioni dettagliate su questo metodo.

Inizializza l'oggetto annuncio con un'istanza di attività

Nel costruttore di un nuovo oggetto annuncio (ad esempio, AdManagerAdView), devi passare un oggetto di tipo Context. Questo Context viene trasmesso ad altre reti pubblicitarie quando viene utilizzata la mediazione. Alcune le reti pubblicitarie richiedono un Context più restrittivo di tipo Activity e potrebbe non essere in grado di pubblicare annunci senza un'istanza Activity. Pertanto, consigliamo di trasmettere un'istanza Activity durante l'inizializzazione degli oggetti annuncio per garantire un'esperienza coerente con le tue reti pubblicitarie mediate.

Utilizzare gli annunci banner con la mediazione

Assicurati di disattivare l'aggiornamento in tutte le UI delle origini annuncio di terze parti per le unità pubblicitarie banner utilizzate nella mediazione. In questo modo viene evitato un doppio aggiornamento, poiché Ad Manager attiva anche un aggiornamento in base alla frequenza di aggiornamento dell'unità pubblicitaria banner.

Utilizzare gli annunci nativi con la mediazione

Di seguito sono riportate alcune best practice da considerare per l'implementazione di annunci nativi della mediazione.

Norme relative alla presentazione degli annunci nativi
Ogni rete pubblicitaria ha le proprie norme. Quando si utilizza la mediazione, è importante ricorda che la tua app deve comunque rispettare le norme dei contenuti che ha fornito l'annuncio.
Usa loadAd() anziché loadAds()
Il metodo loadAds() consente di pubblicare solo annunci Google. Per gli annunci con mediazione, utilizza loadAd() in alternativa.

Leggi statali sulla privacy degli Stati Uniti e GDPR

Se devi rispettare le leggi statali sulla privacy degli Stati Uniti o il Regolamento generale sulla protezione dei dati (GDPR), segui i passaggi descritti nelle impostazioni relative alle normative degli stati USA o nelle impostazioni relative al GDPR per aggiungere i tuoi partner di mediazione nell'elenco dei partner pubblicitari per gli stati USA o per il GDPR in Privacy e messaggi di Ad Manager. In caso contrario, i partner potrebbero non pubblicare annunci nella tua app.

Scopri di più sull'attivazione del trattamento dati limitato (RDP) e ottenere il GDPR Consenso con la Google User Messaging Platform (UMP) l'SDK.