首页 > 解决方案 > 无法获取提供程序 com.google.android.gms.ads.MobileAdsInitProvider: java.lang.ClassNotFoundException - 与 multidex 无关

问题描述

某些安卓手机上,只有我们应用程序的最新版本会崩溃

Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.ClassNotFoundException

它发生在运行 Android 5.1.1 的手机上。

问题不是multidex-related(我在谷歌上搜索过的所有其他答案都与 相关multidex;我们已经multidex在我们的应用程序中启用了多年)。

我假设它与我们更新到最新的 Admob 有关,但我无法在网上找到任何相关的建议。

我们正在引入以下内容:

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        classpath 'com.google.gms:google-services:4.2.0'
    }

dependencies {
    // NEW FUSE INTEGRATION
    compile('com.upsight.android:mediation-core:2.12.0') {
        exclude group: 'com.google.android.gms', module: 'play-services'
        //exclude group: 'com.google.android.gms', module: 'play-services-basement'
        exclude group: 'com.android.support'
        exclude group: 'com.upsight.android', module: 'mediation-ad-network-u2'
        exclude group: 'com.upsight.android', module: 'mediation-ad-network-m2'
        exclude group: 'com.upsight.android', module: 'mediation-ad-network-ac'
        exclude group: 'com.upsight.android', module: 'mediation-ad-network-al'
        exclude group: 'com.upsight.android', module: 'mediation-ad-network-vungle'
    }
    compile 'com.android.support:appcompat-v7:26.1.0'

    compile 'com.android.support:support-v13:26.1.0'
    compile 'com.android.support:design:26.1.0'
    compile 'com.android.support:multidex:1.0.3'
    // compile files('libs/FlurryAnalytics_6.7.0.jar')
    implementation 'com.flurry.android:analytics:11.3.0@aar'
    // compile 'com.flurry.android:marketing:11.3.0@aar' ' No longer needed for Push'

    implementation 'com.google.firebase:firebase-core:16.0.4'
    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    implementation 'com.google.firebase:firebase-ads:17.0.0'
    implementation('com.adincube.sdk:AdinCube-Java-1626ebe:2.+@aar') {
        transitive = true
    }
    implementation 'com.google.android.ads.consent:consent-library:1.0.6'

    //  Fyber
    implementation (name:'ia-sdk-core-release-7.3.1', ext:'aar')
    implementation (name:'ia-video-kit-release-7.3.1', ext:'aar')
    implementation (name:'ia-mraid-kit-release-7.3.1', ext:'aar')
    implementation (name:'ia-native-kit-release-7.3.1', ext:'aar')
    implementation 'com.google.code.gson:gson:2.7'
    implementation ('com.google.android.gms:play-services-base:16.1.0')
    //implementation ('com.google.android.gms:play-services-ads-identifier:17.2.0')
}

标签: androidadmob

解决方案


在这种情况下,将Gradle 构建工具更新为

com.android.tools.build:gradle:3.1.3

消除了问题。以前他们在3.0.1

因此,如果遇到此问题,人们可以再尝试一件事!


推荐阅读