После обновления Google Ads SDK addTestDevice устарела, как решить?

14

После обновления Google Ads SDK to 19.0.0выдает устаревшее предупреждающее сообщение для addTestDevice()устаревших, в то время как я искал эту ссылку для решения проблемы, но не удалось. Так как решить.

Вот мой код

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

и предложение разработчика сайта

// Deprecated AdRequest.Builder.addTestDevice().Use 
   RequestConfiguration.Builder.setTestDeviceIds() instead.
Attaullah
источник

Ответы:

30

Я сделал это так:

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

Официальная ссылка говорит, что это RequestConfigurationглобальная конфигурация, которая будет использоваться для каждого AdRequest. В моем понимании, как только вы это сделаете setRequestConfiguration(), вам AdRequestбольше не нужно настраивать тестовые устройства.

хата
источник
RequestConfiguration требуется в каждом действии?
Attaullah
@ Attaullah Да, я так думаю. Потому что аргумент AdView является контекстом деятельности. Но я понятия не имею, что слово «глобальный» в явном виде означает либо для всей деятельности, либо для всего приложения.
Хата
1
Если я правильно понимаю, RequestConfiguration требуется один раз в первом действии.
TimWeb
Обратите внимание, что, согласно странице разработчиков, «эмуляторы Android автоматически настраиваются как тестовые устройства».
Армандо Маркес Собриньо
Я использовал эту конфигурацию в MainActivity, и у всех объявлений в разных активностях теперь есть черный флажок «Test Ad». Таким образом, эта конфигурация может быть установлена ​​только один раз.
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
источник
-3

Независимо от того, какой идентификатор приложения используется в объявлениях Google, вы можете установить для объявлений с идентификатором подразделения значение " ca-app-pub-3940256099942544/6300978111", в результате чего будут показаны тестовые объявления

Beyaz
источник