Configurar o acesso direto para o Ad Exchange

O SDK dos anúncios para dispositivos móveis do Google é compatível com a monetização dos seus apps com uma propriedade do Ad Exchange. Neste guia, mostramos como configurar seus apps para todos os formatos de anúncio compatíveis com o Ad Exchange.

Pré-requisitos

Configurar seu app para acessar o Ad Exchange

Adicione o ID do app Ad Manager (identificado na interface do Ad Manager) ao arquivo AndroidManifest.xml do aplicativo usando uma tag <meta-data> com android:name="com.google.android.gms.ads.APPLICATION_ID". Para android:value, insira seu próprio ID do aplicativo do Ad Manager entre aspas.

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

Observe também que se a tag <meta-data> não for adicionada, como mostrado acima, ocorrerá uma falha com a mensagem:

Missing application ID.

Em seguida, inicialize o SDK dos anúncios para dispositivos móveis do Google e selecione um formato de anúncio para exibição. Na outra parte deste guia, você implementa o formato de banner para ilustrar como carregar um anúncio do Ad Exchange. As mesmas etapas podem ser aplicadas a qualquer formato de anúncio compatível com o SDK dos anúncios para dispositivos móveis do Google.

Carregar um anúncio do Ad Exchange

Você pode usar um código de propriedade da Web do Ad Exchange com uma barra à direita no seu aplicativo no lugar de um ID de bloco de anúncios.

Por exemplo, para carregar um anúncio de banner colocando uma AdManagerAdView no layout da Activity da seguinte maneira:

# 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>

Se uma barra à direita for adicionada ao código de propriedade da Web do Ad Exchange, conforme mostrado acima, um erro de solicitação de anúncio será exibido com a mensagem:

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

Também é possível converter um código de propriedade da Web do Ad Exchange em um bloco de anúncios. Depois disso, você pode usar a IU do Ad Manager para gerar uma tag do Ad Exchange e copiá-la no seu aplicativo. A tag gerada precisa ter o código de propriedade da Web do Ad Exchange, seguido pelos IDs dos blocos de anúncios descendentes sem uma barra à direita, por exemplo: ca-mb-app-pub-5629679302779023/banner

Como alternativa, você pode criar um AdManagerAdView de forma programática:

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.

Quando AdManagerAdView estiver em vigor, você vai poder chamar o método loadAd() na classe AdManagerAdView e personalizar o comportamento do anúncio usando eventos de anúncio.

Pronto! Agora seu app está pronto para carregar e exibir anúncios de banner do Ad Exchange.

Além disso, é possível usar uma propriedade da Web do Ad Exchange para carregar e exibir outros formatos de anúncio do Ad Exchange seguindo os respectivos guias:

(Somente editores europeus aprovados) Adicionar preços mínimos

Você pode enviar uma solicitação para o recurso "Preços mínimos".

Depois de aprovado, você pode incluir um valor mínimo público ou particular na solicitação de anúncio usando os parâmetros pubf e pvtf, respectivamente. No exemplo de código a seguir, substitua "123" pelos preços mínimos em micros e na moeda padrão da sua rede. Exemplo de como os micros são aplicados: se a moeda padrão for USD, inserir "6000000" será equivalente a USD 6,00.

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();