2016-09-07 7 views
0

При использовании метода Tracing util у меня возникла проблема с межстраничными объявлениями Android AdMob.Почему AdMob интерстициальная блокировка пользовательского интерфейса?

Теперь я использую последнюю версию AdMob:

compile 'com.google.firebase:firebase-ads:9.4.0' 

И этот код:

long start = System.currentTimeMillis(); 
interstitialAd.loadAd(adRequest); 
Log.d(TAG, "load: " + (System.currentTimeMillis() - start) + " ms"); 

печатает:

load: 1250 ms 

и замки UI нить.

Пример устройства: LG G3 Android 5.0.

Я не понимаю, почему он запирает.

P.S. журналы

09-08 11:35:52.294 I/Ads: Starting ad request. 
09-08 11:35:52.297 I/Ads: Use AdRequest.Builder.addTestDevice("C847646CE34895E5C61DEA64E092F1A5") to get test ads on this device. 
09-08 11:35:53.157 W/Ads: The webview is destroyed. Ignoring action. 
09-08 11:35:53.224 E/Ads: JS: Uncaught ReferenceError: AFMA_ReceiveMessage is not defined (:1) 
09-08 11:35:53.546 I/Ads: Scheduling ad refresh 30000 milliseconds from now. 
09-08 11:35:53.553 I/Ads: Ad finished loading. 

P.S.2

Я смотрю ответ на мой вопрос в официальном AdMob Гооге Group Answer

+0

не стесняйтесь, пожалуйста, напишите подробно, замки UI резьба означает? Это прекращает работу вашего приложения? Межстраничные объявления - это полноэкранные объявления, которые охватывают интерфейс их хост-приложения. Они должны работать над вашей деятельностью. Если вы не хотите, чтобы это произошло, вы всегда можете выбрать баннерную рекламу. –

+0

Lock UI означает: заморозить анимацию пользовательского интерфейса. И моя проблема с loadAds(), а не с show(). Я использую AdMob более 4 лет, и эта проблема не возникла раньше. – collosteam

+0

Есть ли исключения в журналах? –

ответ

2

Я думаю, что это ошибка и должно быть сообщено команде Firebase. Я смотрю на InterstitialAd documentation, и это ясно говорит для loadAd:

Начало загрузки объявление на фоне потока.

Если для завершения этого метода требуется много времени, я уверен, что он фактически не использовал фоновый поток или, по крайней мере, не делал его должным образом. Вы можете попробовать сделать этот звонок в медленной сети, и в этом случае я думаю, что вы получите ANR. Это должно подтвердить, что это блокирующий вызов.

+0

Хорошая идея) Я ищу ответ в группе Google AdMob https://groups.google.com/forum/#!searchin/google-admob-ads-sdk/loadAds|sort:relevance/google-admob-ads-sdk/ k4IFZA_QGT4/3gMHaCPPBQAJ – collosteam