Após a atualização do SDK do Google Ads, o addTestDevice foi descontinuado. Como resolver?

14

Após a atualização, Google Ads SDK to 19.0.0uma mensagem de aviso preterida addTestDevice()é preterida, enquanto eu procurava neste link para resolver o problema, mas não obteve êxito. Então, como resolver.

Aqui meu codigo

   mAdView.loadAd(new  RequestConfiguration.Builder
          .setTestDeviceIds(AdRequest.DEVICE_ID_EMULATOR) // show error
          .setTestDeviceIds(DEV_ID) // show error
          .build());

e sugestão de site de desenvolvedor

// Deprecated AdRequest.Builder.addTestDevice().Use 
   RequestConfiguration.Builder.setTestDeviceIds() instead.
Attaullah
fonte

Respostas:

30

Eu fiz assim:

List<String> testDevices = new ArrayList<>();
testDevices.add(AdRequest.DEVICE_ID_EMULATOR);

RequestConfiguration requestConfiguration
    = new RequestConfiguration.Builder()
        .setTestDeviceIds(testDevices)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

Adview adView = new AdView(context);
// ... invoke some methods of adView ...
adView.loadAd(new AdRequest.Builder().build());

O referendo oficial diz que a RequestConfigurationé a configuração global que será usada para todos AdRequest. No meu entendimento, uma vez que você tenha setRequestConfiguration(), seus AdRequests individualmente não precisam mais configurar dispositivos de teste.

hata
fonte
RequestConfiguration é necessário em todas as atividades?
Attaullah 5/03
@ Attaullah Sim, acho que sim. Porque o argumento do AdView é o contexto da atividade. Mas não tenho idéia sobre a palavra 'Global' significa explicitamente uma atividade ou uma aplicação.
hata 6/03
11
Se eu realmente entendi, o RequestConfiguration é necessário uma vez na primeira atividade.
TimWeb 19/03
Observe que, de acordo com a página do desenvolvedor: "Os emuladores Android são configurados automaticamente como dispositivos de teste". "
Armando Marques Sobrinho
Usei essa configuração na MainActivity e todos os anúncios em diferentes atividades agora têm uma caixa preta "Anúncio de teste". Portanto, essa configuração pode ser definida apenas uma vez.
maniek099
1
  String testDeviceId = "xxx";

final RequestConfiguration.Builder requestConfigurationBuilder = new RequestConfiguration.Builder(); 

requestConfigurationBuilder.setTestDeviceIds(Collections.singletonList(testDeviceId)).build();

final RequestConfiguration requestConfiguration = requestConfigurationBuilder.build();

MobileAds.setRequestConfiguration(requestConfiguration);

adLoader.loadAd(new AdRequest.Builder().build());
user3527332
fonte
-3

Qualquer que seja o ID do aplicativo dos anúncios do Google, você pode definir anúncios do código da unidade como " ca-app-pub-3940256099942544/6300978111", cujo resultado é exibir anúncios de teste

Beyaz
fonte