Nach dem Aktualisieren des Google Ads SDK ist addTestDevice veraltet. Wie wird das Problem behoben?

14

Nach dem Update Google Ads SDK to 19.0.0wird eine veraltete Warnmeldung für angezeigtaddTestDevice() die veraltet ist, während ich diesen Link durchsucht habe, um das Problem zu beheben, aber keinen Erfolg hatte. Also, wie man es löst.

Hier mein Code

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

und Vorschlag für eine Entwicklerseite

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

Antworten:

30

Mir hat das gefallen:

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

Die offizielle Referenz besagt, dass a RequestConfigurationdie globale Konfiguration ist, die für jeden verwendet wird AdRequest. In meinem Verständnis, sobald Sie haben setRequestConfiguration(), Ihre AdRequests einzeln brauchen nicht zu Satz Testgeräte mehr.

hata
quelle
Ist RequestConfiguration in jeder Aktivität erforderlich?
Attaullah
@Attaullah Ja, ich denke schon. Weil das Argument von AdView der Kontext von Activity ist. Aber ich habe keine Ahnung, dass das Wort "global" explizit entweder eine aktivitätsweite oder eine anwendungsweite Bedeutung hat.
Hata
1
Wenn ich das wirklich verstehe, ist die RequestConfiguration einmal in der ersten Aktivität erforderlich.
TimWeb
Beachten Sie laut Entwicklerseite: "Android-Emulatoren werden automatisch als Testgeräte konfiguriert."
Armando Marques Sobrinho
Ich habe diese Konfiguration bei MainActivity verwendet und alle Anzeigen in verschiedenen Aktivitäten haben jetzt ein schwarzes Feld "Testanzeige". Diese Konfiguration kann also nur einmal eingestellt werden.
maniek099 vor
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
quelle
-3

Unabhängig von der App-ID von Google-Anzeigen können Sie Anzeigen mit der Einheiten-ID auf " ca-app-pub-3940256099942544/6300978111" setzen, um Testanzeigen anzuzeigen

Beyaz
quelle