L'SDK Google Mobile Ads supporta la monetizzazione delle app con una proprietà Ad Exchange. Questa guida mostra come configurare le app per tutti i formati degli annunci supportati da Ad Exchange.
Prerequisiti
- Completa i prerequisiti.
- Configura l' app per l'SDK Google Mobile Ads.
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 presente che se non aggiungi il tag <meta-data> come mostrato sopra, si verifica un
arresto anomalo con il messaggio:
Missing application ID.
Dopodiché, puoi inizializzare l'SDK Google Mobile Ads e selezionare un formato dell'annuncio da visualizzare. 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 proprietà web Ad Exchange con una barra in avanti finale al posto di un ID unità pubblicitaria. Ad esempio, ca-mb-app-pub-5629679302779023/.
L'esempio seguente aggiunge il codice proprietà web Ad Exchange a una richiesta di annunci banner:
Kotlin
val adRequest = BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/", AdSize.BANNER).build()
BannerAd.load(
adRequest,
object : AdLoadCallback<BannerAd> {
override fun onAdLoaded(ad: BannerAd) {
bannerAd = ad
activity?.runOnUiThread {
binding.bannerViewContainer.addView(ad.getView(requireActivity()))
}
}
}
)
Java
BannerAdRequest adRequest = new BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/",
AdSize.BANNER).build();
BannerAd.load(
adRequest,
new AdLoadCallback<BannerAd>() {
@Override
public void onAdLoaded(@NonNull BannerAd ad) {
bannerAd = ad;
runOnUiThread(
() -> binding.bannerViewContainer.addView(ad.getView(MainActivity.this)));
}
});
Tieni presente che se non aggiungi una barra in avanti finale al codice proprietà web Ad Exchange, si verifica un errore nella richiesta di annunci con il messaggio:
Invalid Request. Cannot determine request type. Is your ad unit id correct?
Puoi anche convertire un codice proprietà web Ad Exchange in un'unità pubblicitaria.
Dopodiché, utilizza l'interfaccia utente di Ad Manager per generare un tag Ad Exchange e copiarlo nella tua
app. Il tag generato deve avere il codice proprietà web Ad Exchange, seguito
dagli ID unità pubblicitarie discendenti senza una barra in avanti finale, ad esempio:
ca-mb-app-pub-5629679302779023/banner.
Questo è tutto! Ora la tua app è 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:
Aggiungere i prezzi minimi (solo per i publisher europei approvati)
Puoi inviare una richiesta per la funzionalità "Prezzi minimi".
Una volta approvata, puoi includere un prezzo minimo pubblico o privato nella richiesta di annunci utilizzando rispettivamente i parametri pubf e pvtf. Nell'esempio di codice
seguente, sostituisci "123" con i prezzi minimi in micro e la valuta predefinita della tua rete. Esempio di come vengono applicati i micro: se la tua valuta predefinita è $, inserire "6.000.000" equivale a 6,00 $.
Kotlin
val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
val request = AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
.setGoogleExtrasBundle(extras)
.build();
Java
Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
AdRequest request = new AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
.setGoogleExtrasBundle(extras)
.build();