Après la mise à jour du SDK Google Ads, addTestDevice est obsolète, comment résoudre ce problème?

14

Après la mise à jour Google Ads SDK to 19.0.0donne un message d'avertissement obsolète pour addTestDevice()est obsolète, alors que j'ai recherché ce lien pour résoudre le problème mais sans succès. Alors, comment résoudre.

Voici mon code

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

et suggestion de site de développeur

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

Réponses:

30

J'ai aimé ça:

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

Le référent officiel dit que a RequestConfigurationest la configuration globale qui sera utilisée pour tous AdRequest. D'après ce que je comprends, une fois que vous l'avez setRequestConfiguration(), vos utilisateurs AdRequestn'ont plus besoin de définir des appareils de test.

hata
la source
est-ce que RequestConfiguration est requis dans chaque activité?
Attaullah
@Attaullah Oui, je pense que oui. Parce que l'argument d'AdView est le contexte de l'activité. Mais je n'ai aucune idée du mot «global» qui signifie explicitement soit à l'échelle de l'activité soit à l'échelle de l'application.
Hata
1
Si je comprends bien, la demande de configuration est requise une fois dans la première activité.
TimWeb
Notez que selon la page des développeurs: "Les émulateurs Android sont automatiquement configurés comme des appareils de test." "
Armando Marques Sobrinho
J'ai utilisé cette configuration à MainActivity et toutes les annonces dans différentes activités ont maintenant une boîte noire "Test Ad". Cette configuration ne peut donc être définie qu'une seule fois.
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
la source
-3

Quel que soit l'ID d'application de Google Ads, vous pouvez définir des annonces d'ID d'unité sur " ca-app-pub-3940256099942544/6300978111", ce qui permet d'afficher des annonces de test

Beyaz
la source