Pakiet SDK do reklam mobilnych Google obsługuje zarabianie na aplikacjach za pomocą usługi Ad Exchange usługi. Ten przewodnik pokazuje, jak skonfigurować w aplikacjach wszystkie formaty reklam obsługiwane przez Ad Exchange.
Wymagania wstępne
- Uzupełnij
- Skonfiguruj dla pakietu SDK do reklam mobilnych Google.
Konfigurowanie aplikacji pod kątem dostępu do Ad Exchange
Dodaj identyfikator aplikacji Ad Manager (określony w usłudze Ad Manager
UI) na
Plik AndroidManifest.xml za pomocą tagu <meta-data>
z atrybutem
android:name="com.google.android.gms.ads.APPLICATION_ID"
W przypadku usługi android:value
,
wpisz w cudzysłowie identyfikator własnej aplikacji Ad Managera.
<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>
Pamiętaj też, że jeśli nie dodasz tagu <meta-data>
, jak pokazano powyżej, spowoduje to błąd
ulega awarii z wiadomością:
Missing application ID.
Następnie można zainicjować Reklamy mobilne Google pakiet SDK i wybierz format reklamy, który chcesz wyświetlić. Pozostała część tego przewodnika zawiera banner format, aby pokazuje, jak wczytać reklamę z Ad Exchange. Te same czynności można wykonać na wszystkich formatów reklam obsługiwanych przez pakiet SDK do reklam mobilnych Google.
Wczytywanie reklamy z Ad Exchange
Możesz użyć kodu usługi internetowej Ad Exchange z końcowym ukośnikiem w polu do aplikacji zamiast identyfikatora jednostki reklamowej.
Aby np. wczytać baner reklamowy, umieść w układzie AdManagerAdView
dla Activity
w następujący sposób:
# 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>
Pamiętaj, że jeśli nie dodasz ukośnika do kodu usługi internetowej Ad Exchange, jak pokazano powyżej, żądanie reklamy zakończy się błędem z komunikatem:
Invalid Request. Cannot determine request type. Is your ad unit id correct?
Pamiętaj, że kod usługi internetowej Ad Exchange możesz przekształcić w jednostkę reklamową.
Potem możesz używać interfejsu Ad Managera do wygenerowania raportu Ad Exchange.
Tag i skopiuj go do
. Wygenerowany tag powinien zawierać kod usługi internetowej Ad Exchange i tag
według identyfikatorów podrzędnych jednostek reklamowych bez ukośnika końcowego, np.:
ca-mb-app-pub-5629679302779023/banner
Możesz też automatycznie utworzyć AdManagerAdView
:
Java
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");
// TODO: Add adView to your view hierarchy.
Kotlin
val adView = AdManagerAdView(this)
adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"
// TODO: Add adView to your view hierarchy.
Po skonfigurowaniu funkcji AdManagerAdView
możesz wywołać metodę loadAd()
w funkcji
AdManagerAdView
i dostosuj działanie reklamy za pomocą reklamy
zdarzeń.
Znakomicie. Twoja aplikacja jest już gotowa do wczytywania i wyświetlania banerów reklamowych z Ad Exchange.
Możesz dodatkowo używać usługi internetowej Ad Exchange do wczytywania i wyświetlania innych formatów reklam dostępnych w Ad Exchange.
(dotyczy tylko zatwierdzonych wydawców z Europy) Dodawanie cen minimalnych
Możesz przesłać prośbę o „Ceny minimalne” .
Po zatwierdzeniu możesz uwzględnić w żądaniu reklamy publiczną cenę minimalną lub prywatną cenę minimalną.
za pomocą parametrów pubf
i pvtf
. W przykładowym kodzie zastąp „123” cenami minimalnymi w częściach milionowych i walucie domyślnej sieci. Przykład
jeśli walutą domyślną jest USD, wpisz „6000000”. to
ekwiwalent w wysokości 6 USD.
Java
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();
Kotlin
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();