【问题标题】:Android dependency compatibility on adding admob packageAndroid对添加admob包的依赖兼容性
【发布时间】:2018-02-23 08:37:00
【问题描述】:

我在现有应用程序中添加了 admob,这会导致现有程序包出现兼容性错误

现有包

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services-analytics:7.8.0'
compile 'uk.co.chrisjenx:calligraphy:2.1.0'
compile 'com.github.ganfra:material-spinner:1.1.0'
compile 'com.wdullaer:materialdatetimepicker:1.5.1'
compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
compile 'com.github.ganfra:material-spinner:1.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:support-v13:23.1.0'   

}

如果我像下面这样添加 admob 包

compile 'com.google.android.gms:play-services-ads:10.2.1'

它给出了错误

compile 'com.google.android.gms:play-services-analytics:7.8.0'  
compile 'com.android.support:recyclerview-v7:23.1.0'

声明“必须使用完全相同的版本规范”,我不知道如何知道现有依赖项的兼容 admob 版本。我已经搜索过它,但没有找到有用的资源。 谁能说出与这些依赖项一起使用的正确 admob 依赖项是什么以及如何知道?

还有一个,

final NativeExpressAdView adView = (NativeExpressAdView) this.dialog.findViewById(R.id.adView3);
                **adView.loadAd(new AdLoader.Builder().build());**
                adView.setAdListener(new AdListener() {
                    public void onAdLoaded() {
                        super.onAdLoaded();
                        adView.setVisibility(View.VISIBLE);
                    }
                });

adView.loadAd(new AdLoader.Builder().build()); 行给出错误,Builder 中的 Builder(Context, String) 不能应用于 Builder()

我对此的导入

import com.google.android.gms.ads.AdRequest.Builder;

如何解决此问题。如果第二个问题与我的第一个问题无关,请告诉我,我会将其作为单独的问题发布

【问题讨论】:

    标签: android gradle dependencies android-gradle-plugin admob


    【解决方案1】:

    所有 Google 依赖项都应该是相同的版本。如果您不这样做,则会发生此错误。做一件事:

    更改版本

    compile 'com.google.android.gms:play-services-analytics:7.8.0'
    

    compile 'com.google.android.gms:play-services-analytics:10.2.1'
    

    然后添加admob依赖

    compile 'com.google.android.gms:play-services-ads:10.2.1'
    

    要修复 RecyclerView 错误,请替换此

    compile 'com.android.support:recyclerview-v7:23.1.0'
    

    到这里:

     compile 'com.android.support:recyclerview-v13:23.1.0'
    

    还要改变这个

    compile 'com.android.support:appcompat-v7:23.1.0'
    

    到这里

    compile 'com.android.support:appcompat-v13:23.1.0'
    

    这背后的原因是你不能同时使用 v7 和 v13 或者你可以使用 v7 或 v13 。同时使用两者会产生版本兼容性错误。

    【讨论】:

    • 是的,修复了播放服务上的错误,编译 'com.android.support:recyclerview-v7:23.1.0' 是什么。你能告诉我如何找出版本
    • 检查您的 android 设计版本和支持库以修复 recyclerview 错误
    猜你喜欢
    • 2021-11-04
    • 1970-01-01
    • 1970-01-01
    • 2018-12-20
    • 1970-01-01
    • 1970-01-01
    • 2016-11-23
    • 2019-02-03
    • 2016-04-01
    相关资源
    最近更新 更多