Começar

Este guia mostra como integrar um adaptador de mediação à sua App Android.

Pré-requisitos

Antes de integrar a mediação a um formato de anúncio, você precisa integrar essa formato do anúncio no seu app:

Ainda não conhece a mediação? Lida Introdução à mediação.

Para lances: SDK dos anúncios para dispositivos móveis do Google 18.3.0 ou superior.

Inicializar o SDK de anúncios para dispositivos móveis

O guia de início rápido mostra como inicializar os anúncios para dispositivos móveis SDK do Cloud. Durante essa chamada de inicialização, os adaptadores de mediação também é inicializado. É importante aguardar a conclusão da inicialização antes você carrega anúncios para garantir a participação plena de todas as redes de anúncios no a primeira solicitação de anúncio.

O exemplo de código a seguir mostra como verificar a inicialização de cada adaptador antes de fazer uma solicitação de anúncio.

Java

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        new Thread(
                () ->
                    // Initialize the Google Mobile Ads SDK on a background thread.
                    MobileAds.initialize(
                        this,
                        initializationStatus -> {
                          Map<String, AdapterStatus> statusMap =
                              initializationStatus.getAdapterStatusMap();
                          for (String adapterClass : statusMap.keySet()) {
                            AdapterStatus status = statusMap.get(adapterClass);
                            Log.d(
                                "MyApp",
                                String.format(
                                    "Adapter name: %s, Description: %s, Latency: %d",
                                    adapterClass, status.getDescription(), status.getLatency()));
                          }
                          // Start loading ads here...
                        }))
            .start();
    }
}

Kotlin

import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch

class MainActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    val backgroundScope = CoroutineScope(Dispatchers.IO)
    backgroundScope.launch {
      // Initialize the Google Mobile Ads SDK on a background thread.
      MobileAds.initialize(this@MainActivity) { initializationStatus ->
        val statusMap =
          initializationStatus.adapterStatusMap
        for (adapterClass in statusMap.keys) {
          val status = statusMap[adapterClass]
          Log.d(
            "MyApp", String.format(
              "Adapter name: %s, Description: %s, Latency: %d",
              adapterClass, status!!.description, status.latency
            )
          )
        }
        // Start loading ads here...
      }
    }
  }
}

Verifique qual classe de adaptador da rede de publicidade carregou o anúncio

Aqui está um exemplo de código que registra o nome da classe da rede de publicidade para um anúncio de banner:

Java

public void onAdLoaded() {
  Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}

Kotlin

override fun onAdLoaded() {
  Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}

Consulte a documentação de ResponseInfo sobre getMediationAdapterClassName() para detalhes sobre esse método.

Inicializar seu objeto de anúncio com uma instância Activity

No construtor de um novo objeto de anúncio (por exemplo, AdManagerAdView), é preciso passar um objeto do tipo Context Esse Context é transmitido para outras redes de publicidade quando a mediação é usada. Algumas as redes de publicidade exigem um Context mais restritivo do tipo Activity e talvez não possa veicular anúncios sem uma instância de Activity. Portanto, recomendamos transmitir uma instância Activity ao inicializar objetos de anúncios para garantir uma experiência consistente com suas redes de anúncios mediadas.

Usar anúncios de banner com mediação

Desative a atualização em todas as interfaces de origem de anúncios terceirizadas para anúncios de banner usadas na mediação. Isso evita que uma uma atualização dupla, já que o Ad Manager também aciona uma atualização com base na taxa de atualização do seu bloco de anúncios de banner.

Usar anúncios nativos com mediação

Confira a seguir algumas práticas recomendadas para considerar ao implementar anúncios nativos mediação.

Política de apresentação de anúncios nativos
Cada rede de publicidade tem as próprias políticas. Ao usar a mediação, é importante mas lembre-se de que seu app ainda precisa obedecer às políticas de rede que forneceu o anúncio.
Usar loadAd() em vez de loadAds()
O método loadAds() veicula apenas anúncios do Google. Para anúncios mediados, use loadAd().

Leis Estaduais de Privacidade dos EUA e GDPR

Se você precisar estar em conformidade com a Política de define a privacidade leis ou de Proteção geral de dados (GDPR), siga a etapas nas regulamentações estaduais dos EUA configurações ou GDPR configurações para adicionar suas de parceiros de mediação na Política de privacidade e de mensagens estados dos EUA ou lista de parceiros de publicidade do GDPR. Não fazer isso pode levar os parceiros não veicular anúncios no seu app.

Saiba mais sobre como ativar o processamento de dados restrito (RDP, na sigla em inglês) e receber o consentimento do GDPR com o SDK da plataforma de mensagens aos usuários (UMP) do Google.