Сбой AdMob
Android Studio: **Все версии ** | Appodeal SDK: Все версии
Если приложение даёт сбой сразу после запуска, проверьте логи на устройстве. Подключите устройство с установленным приложением, откройте консоль Android Studio Logcat, запустите приложение и проверьте логи. Дополнительные сведения о консоли см. в разделе Отладка с помощью Android Studio.
Следующий сбой происходит, если идентификатор приложения AdMob (AdMob App Id
) не был указан
в AndroidManifest.xml файле, что необходимо для интеграции AdMob.
Appodeal SDK по умолчанию содержит адаптеры AdMob.
Пример лога сбоя:
java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException:
**************************************************************************
* The Google Mobile Ads SDK was initialized incorrectly. AdMob publishers *
* should follow the instructions here: *
* https://googlemobileadssdk.page.link/AdMob-android-update-manifest *
* to add a valid App ID inside the AndroidManifest. *
* Google Ad Manager publishers should follow instructions here: *
* https://googlemobileadssdk.page.link/ad-manager-android-update-manifest. *
**************************************************************************
at android.app.ActivityThread.installProvider(ActivityThread.java:7194)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6672)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6567)
at android.app.ActivityThread.access$1400(ActivityThread.java:224)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1887)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7562)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Caused by: java.lang.IllegalStateException:
...
Способы Решения
Использование AdMob В Приложении
Если вы планируете использовать AdMob в вашем приложении - добавьте AdMob App ID
под тег meta-data в AndroidManifest.xml:
<manifest>
<application>
<!-- Add your AdMob App ID -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
</application>
</manifest>
AdMob App ID
- это уникальный идентификатор, присвоенный вашему приложению.
Чтобы найти AdMob App ID в своем аккаунте AdMob, перейдите в Apps → Ваше Приложение → App settings и скопируйте AdMob App ID.
Перед использованием AdMob убедитесь, что вы выполнили шаги из нашего руководства по интеграции AdMob и руководства AdMob sync.
Исключение AdMob Из Приложения
Если вы не планируете использовать AdMob в вашем приложении, выполните следующие шаги:
- Перейдите в раздел Настройка Медиационных Сетей, снимите флажок с
сети AdMob и сгенерируйте новый файл
build.gradle
с исключенными сетями.
- В дополнение вам необходимо вручную исключить Play Services Ads и использовать
build.gradle
файл со следующими настройками:
- Kotlin
- Java
implementation("com.appodeal.ads:sdk:3.2.1.+") {
exclude(group = "com.appodeal.ads.sdk.networks", module = "admob")
exclude(group = "com.google.android.gms", module = "play-services-ads")
}
implementation ('com.appodeal.ads:sdk:3.2.1.+') {
exclude group: 'com.appodeal.ads.sdk.networks', module: 'admob'
exclude group: 'com.google.android.gms', module: 'play-services-ads'
}