首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >java.lang.RuntimeException:无法获取provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException

java.lang.RuntimeException:无法获取provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException
EN

Stack Overflow用户
提问于 2020-07-19 09:40:15
回答 2查看 535关注 0票数 0

突然,我试图打开我的应用程序,但应用程序不想启动。在打开它之前它停止了。我开始搜索,并尝试了所有其他类似的问题,但都没有奏效。这是我的日志:

代码语言:javascript
运行
复制
2020-07-18 22:27:41.652 21042-21042/? I/art: Not late-enabling -Xcheck:jni (already on)
2020-07-18 22:27:41.652 21042-21042/? W/art: Unexpected CPU variant for X86 using defaults: x86
2020-07-18 22:27:41.878 21042-21042/? W/System: ClassLoader referenced unknown path: /data/app/com.ainimei.remotemouse-1/lib/x86
2020-07-18 22:27:41.900 21042-21042/? D/AndroidRuntime: Shutting down VM
2020-07-18 22:27:41.900 21042-21042/? E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.ainimei.remotemouse, PID: 21042
    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:5856)
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:5445)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5384)
        at android.app.ActivityThread.-wrap2(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
     Caused by: 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 com.google.android.gms.internal.ads.zzyz.attachInfo(com.google.android.gms:play-services-ads-lite@@19.2.0:33)
        at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(com.google.android.gms:play-services-ads-lite@@19.2.0:3)
        at android.app.ActivityThread.installProvider(ActivityThread.java:5853)
            ... 10 more

下面是我的androidManifest.xml:注意代码没有元数据标记。但直到现在我才需要它。此外,我的应用程序不使用广告。

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ainimei.remotemouse">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

    <application
        android:allowBackup="true"
        android:fullBackupContent="true"
        android:icon="@drawable/ainimei_logo_icon"
        android:label="@string/app_name"
        android:roundIcon="@drawable/ainimei_logo_icon"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".SelectConnectionType" />
        <activity android:name=".ControlBluetoothConnection" />
        <activity android:name=".Connection" />
        <activity
            android:name=".KeyboardActivity"
            android:screenOrientation="landscape" />
        <activity
            android:name=".ProfileSettingsActivity"
            android:screenOrientation="portrait" />
        <activity
            android:name=".loginActivity"
            android:screenOrientation="portrait" />
        <activity
            android:name=".buyPremiumActivity"
            android:screenOrientation="portrait" />
        <activity
            android:name=".select_control"
            android:screenOrientation="portrait" />
        <activity
            android:name=".SettingsActivity"
            android:screenOrientation="portrait" />
        <activity
            android:name=".MainActivity"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

不管怎样,我一直在尝试。

EN

回答 2

Stack Overflow用户

发布于 2020-07-19 10:12:11

在您的清单文件中,在应用程序标记内放置以下代码

代码语言:javascript
运行
复制
<application>
        <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
             
            /// pass the key generated from your admob which contains ~(APP ID)
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> // 
    </application>
票数 0
EN

Stack Overflow用户

发布于 2021-07-07 14:20:00

只需检查元数据标签是否在活动标签之外

如果是这样的话

代码语言:javascript
运行
复制
<manifest>
    <application>
        <activity>
            <meta-data> 
                android:name="com.google.android.gms.ads.APPLICATION_ID" 
                android:value="ca-app-pub-4347201915048498~6120388314"/>
        </activity>
    </application>
</manifest>

这应该改成这样

代码语言:javascript
运行
复制
<manifest>
    <application>
        <activity>
        </activity>
        <meta-data 
            android:name="com.google.android.gms.ads.APPLICATION_ID" 
            android:value="ca-app-pub-4347201915048498~6120388314"/>
    </application>
</manifest>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62975453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档