Configurare l'accesso diretto per Ad Exchange

L'SDK Google Mobile Ads supporta la monetizzazione delle tue app con una proprietà Ad Exchange. Questa guida ti mostra come configurare le tue app per tutti i formati degli annunci supportati da Ad Exchange.

Prerequisiti

Configurare l'app per l'accesso ad Ad Exchange

Aggiungi l'ID app Ad Manager (identificato nell'interfaccia utente di Ad Manager) al file AndroidManifest.xml della tua app tramite un tag <meta-data> con android:name="com.google.android.gms.ads.APPLICATION_ID". Per android:value, inserisci il tuo ID app Ad Manager, racchiuso tra virgolette.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Tieni inoltre presente che la mancata aggiunta del tag <meta-data> come mostrato sopra comporta un arresto anomalo con il messaggio:

Missing application ID.

Successivamente, puoi inizializzare l'SDK Google Mobile Ads e selezionare un formato dell'annuncio da mostrare. Il resto di questa guida implementa il formato banner per illustrare come caricare un annuncio da Ad Exchange. Gli stessi passaggi possono essere applicati a qualsiasi formato dell'annuncio supportato dall'SDK Google Mobile Ads.

Caricare un annuncio da Ad Exchange

Puoi utilizzare un codice della proprietà web Ad Exchange con una barra verticale finale nella tua app al posto di un ID unità pubblicitaria.

Ad esempio, per caricare un annuncio banner inserendo un AdManagerAdView nel layout per il Activity come segue:

# main_activity.xml
...
  <com.google.android.gms.ads.admanager.AdManagerAdView
      xmlns:ads="http://schemas.android.com/apk/res-auto"
      android:id="@+id/adManagerAdView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-mb-app-pub-5629679302779023/">
  </com.google.android.gms.ads.admanager.AdManagerAdView>

Tieni presente che se non aggiungi una barra diagonale finale al codice della proprietà web di Ad Exchange come mostrato sopra, si verifica un errore di richiesta di annuncio con il messaggio:

Invalid Request. Cannot determine request type. Is your ad unit id correct?

Tieni inoltre presente che puoi convertire un codice proprietà web Ad Exchange in un'unità pubblicitaria. Dopodiché puoi utilizzare l'interfaccia utente di Ad Manager per generare un tag Ad Exchange e copiarlo nella tua app. Il tag generato deve contenere il codice della proprietà web Ad Exchange, seguito dagli ID unità pubblicitarie discendenti senza barra verticale finale, ad esempio:ca-mb-app-pub-5629679302779023/banner

In alternativa, puoi creare un AdManagerAdView in modo programmatico:

JavaKotlin
AdManagerAdView adView = new AdManagerAdView(this);

adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");

// TODO: Add adView to your view hierarchy.
val adView = AdManagerAdView(this)

adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"

// TODO: Add adView to your view hierarchy.

Una volta impostato AdManagerAdView, puoi chiamare il loadAd() metodo nella AdManagerAdView classe e personalizzare il comportamento dell'annuncio utilizzando gli eventi dell'annuncio.

È tutto. La tua app è ora pronta per caricare e visualizzare gli annunci banner di Ad Exchange.

Inoltre, puoi utilizzare una proprietà web Ad Exchange per caricare e visualizzare altri formati degli annunci di Ad Exchange seguendo le rispettive guide:

(Solo per i publisher europei approvati) Aggiungere i prezzi minimi

Puoi inviare una richiesta per la funzionalità "Prezzi minimi".

Una volta approvata, puoi includere un piano pubblico o privato nella richiesta di annuncio utilizzando rispettivamente i parametri pubf e pvtf. Nell'esempio di codice riportato di seguito, sostituisci"123" con i prezzi minimi in micro e la valuta predefinita della rete. Esempio di come vengono applicati i micro: se la valuta predefinita è in dollari statunitensi, inserire "6000000" equivale a 6,00 $.

JavaKotlin
Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();
val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
    .build();