Po zaktualizowaniu pakietu Google Ads SDK addTestDevice jest przestarzałe, jak rozwiązać?

14

Po aktualizacji Google Ads SDK to 19.0.0daje przestarzałe ostrzeżenie, ponieważ addTestDevice()jest przestarzałe, a ja szukałem tego linku w celu rozwiązania problemu, ale nie udało się. Więc jak rozwiązać.

Oto mój kod

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

oraz sugestie witryny dla programistów

// Deprecated AdRequest.Builder.addTestDevice().Use 
   RequestConfiguration.Builder.setTestDeviceIds() instead.
Attaullah
źródło

Odpowiedzi:

30

Podobało mi się to:

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

Oficjalne odniesienie mówi, że a RequestConfigurationjest konfiguracją globalną, która będzie używana dla każdego AdRequest. W moim rozumieniu, kiedy już to zrobisz setRequestConfiguration(), twoje AdRequestindywidualne nie muszą już ustawiać urządzeń testowych.

hata
źródło
czy wymagana jest konfiguracja RequestConfiguracja w każdym działaniu?
Attaullah
@Attaullah Tak, tak mi się wydaje. Ponieważ argumentem AdView jest kontekst działania. Ale nie mam pojęcia o słowie „globalny” wyraźnie oznacza zarówno działanie, jak i zastosowanie.
hata
1
Jeśli naprawdę rozumiem, RequestConfiguracja jest wymagana raz w pierwszym działaniu.
TimWeb
Zauważ, że zgodnie ze stroną programistów: „Emulatory Androida są automatycznie konfigurowane jako urządzenia testowe.” ”
Armando Marques Sobrinho
Użyłem tej konfiguracji w MainActivity, a wszystkie reklamy w różnych działaniach mają teraz czarne pole „Reklama testowa”. Tak więc tę konfigurację można ustawić tylko raz.
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());
użytkownik3527332
źródło
-3

Bez względu na identyfikator aplikacji Google Ads, możesz ustawić reklamy o identyfikatorze jednostki na „ ca-app-pub-3940256099942544/6300978111”, które powodują wyświetlanie reklam testowych

Beyaz
źródło