AdMob MobileAds.initialize вызывает сбой приложения у некоторых пользователей - PullRequest
0 голосов
/ 09 мая 2020

Я реализовал Admob, и он работает для большинства моих пользователей, мне удалось воспроизвести ошибку на реальном устройстве Motorola z2 play по следующей причине: (Реклама отображается на большинстве устройств. Я смог воспроизвести эту ошибку в 1 из 6 устройств.)

E/linker: normalize_path - invalid input: "null", the input path should be absolute
W/linker: Warning: unable to normalize "null"
A/zygote: java_vm_ext.cc:523] JNI DETECTED ERROR IN APPLICATION: GetStringUTFChars received NULL jstring
    java_vm_ext.cc:523]     in call to GetStringUTFChars
    java_vm_ext.cc:523]     from int android.webkit.WebViewFactory.nativeLoadWithRelroFile(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.ClassLoader)
    java_vm_ext.cc:523] "main" prio=5 tid=1 Runnable
    java_vm_ext.cc:523]   | group="main" sCount=0 dsCount=0 flags=0 obj=0x733a35e0 self=0xaca04000
    java_vm_ext.cc:523]   | sysTid=10829 nice=-10 cgrp=default sched=0/0 handle=0xb04fa4a8
    java_vm_ext.cc:523]   | state=R schedstat=( 525658304 61963121 522 ) utm=43 stm=8 core=5 HZ=100
    java_vm_ext.cc:523]   | stack=0xbe595000-0xbe597000 stackSize=8MB
    java_vm_ext.cc:523]   | held mutexes= "mutator lock"(shared held)

вот как я инициализирую Admob при запуске

public class AppName extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
            MobileAds.initialize(AppName.this, new OnInitializationCompleteListener() {
                @Override
                public void onInitializationComplete(InitializationStatus initializationStatus) {
                }
            });

    }


}

И мой файл манифеста

 <application

        android:name=".AppName"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme.NoActionBar">

также включает следующее разрешения

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Я следил за документацией по admob.

Может кто-нибудь, пожалуйста, помогите мне решить эту проблему.

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 09 мая 2020

Убедитесь, что вы добавили эту строку в свой манифест:

 <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>

И просто инициализируйте ее следующим образом, и убедитесь, что вы вызываете ее только один раз при запуске приложения

MobileAds.initialize(this, "ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy");
0 голосов
/ 09 мая 2020

Вы должны инициализировать MobileAds в своем классе Application. Не в вашем классе Activity. Создайте новый класс под названием Application. И добавьте это в тег приложения в своем манифесте.

 android:name=".Application"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...