Konfigurowanie bezpośredniego dostępu do Ad Exchange

Wybierz platformę: Android Nowy Android iOS

Pakiet SDK do reklam mobilnych Google umożliwia zarabianie na aplikacjach za pomocą usługi internetowej Ad Exchange property. Z tego przewodnika dowiesz się, jak skonfigurować aplikacje pod kątem wszystkich formatów reklam obsługiwanych przez Ad Exchange.

Wymagania wstępne

Konfigurowanie aplikacji pod kątem dostępu do Ad Exchange

Dodaj identyfikator aplikacji Ad Managera (określony w interfejsie Ad Managera UI) do pliku AndroidManifest.xml aplikacji za pomocą tagu <meta-data> z atrybutem android:name="com.google.android.gms.ads.APPLICATION_ID". W polu android:value wpisz identyfikator aplikacji Ad Managera (w cudzysłowie).

<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> w sposób opisany powyżej, aplikacja ulegnie awarii i wyświetli się komunikat:

Missing application ID.

Następnie możesz zainicjować pakiet SDK do reklam mobilnych Google i wybrać format reklamy do wyświetlenia. W dalszej części tego przewodnika zaimplementujemy format banera, aby pokazać, jak wczytać reklamę z Ad Exchange. Te same kroki można zastosować w przypadku wszystkich formatów reklam obsługiwanych przez pakiet SDK do reklam mobilnych Google.

Wczytywanie reklamy z Ad Exchange

Zamiast identyfikatora jednostki reklamowej możesz użyć kodu usługi internetowej Ad Exchange z ukośnikiem na końcu. Na przykład ca-mb-app-pub-5629679302779023/.

Aby na przykład wczytać baner reklamowy, umieść element AdManagerAdView w układzie Activity w ten 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>

Możesz też utworzyć hierarchię widoków programowo:

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.

Gdy element AdManagerAdView będzie na swoim miejscu, możesz wywołać metodę loadAd() w klasie AdManagerAdView i dostosować działanie reklamy za pomocą zdarzeń reklamowych.

Pamiętaj, że jeśli nie dodasz ukośnika na końcu kodu usługi internetowej Ad Exchange, żądanie reklamy zakończy się błędem z komunikatem:

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

Możesz też przekształcić kod usługi internetowej Ad Exchange w jednostkę reklamową. Następnie użyj interfejsu Ad Managera, aby wygenerować tag Ad Exchange i skopiować go do aplikacji. Wygenerowany tag powinien zawierać kod usługi internetowej Ad Exchange, a następnie identyfikatory jednostek reklamowych podrzędnych bez ukośnika na końcu, np. ca-mb-app-pub-5629679302779023/banner.

To wszystko. Twoja aplikacja jest już gotowa do wczytywania i wyświetlania banerów reklamowych z Ad Exchange.

Możesz też użyć usługi internetowej Ad Exchange, aby wczytywać i wyświetlać inne formaty reklam z Ad Exchange. W tym celu postępuj zgodnie z odpowiednimi przewodnikami:

Dodawanie cen minimalnych (dotyczy tylko zatwierdzonych wydawców z Europy)

Możesz przesłać prośbę dotyczącą funkcji „Ceny minimalne”.

Po zatwierdzeniu możesz uwzględnić w żądaniu reklamy cenę minimalną publiczną lub prywatną, używając odpowiednio parametrów pubf i pvtf. W poniższym przykładzie kodu zastąp „123” cenami minimalnymi w częściach milionowych i walucie domyślnej sieci. Przykład zastosowania części milionowych: jeśli walutą domyślną jest USD, „6000000” to równowartość 6,00 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();