使用admob 15.0.0与最新的支持库时的Gradle冲突

时间:2018-04-17 04:01:36

标签: android android-gradle android-support-library google-admob android-compatibility

我正在使用'com.google.android.gms:play-services-ads:12.0.1'。 和android支持版本27.1.1。

当我尝试将我的广告库升级到最新版本(15.0.0)时,我收到一条错误消息,说我必须使用相同的版本规范。见下图。

enter image description here

有没有办法为supportLibraries和play-services-ads使用最新版本?

请注意,当我使用play-services-ads版本12.0.1

时,此问题不存在

3 个答案:

答案 0 :(得分:16)

您可以尝试通过将支持库添加到依赖项块来覆盖冲突的支持库:

implementation 'com.android.support:customtabs:27.1.1'

答案 1 :(得分:1)

将所有库更改为与您的案例冲突的最低库,将一些库从27.1.1更改为26.1.0。

答案 2 :(得分:1)

我又回到了12.0.1

implementation 'com.google.firebase:firebase-ads:12.0.1'

我觉得Google需要解决这个问题。

2018年5月4日更新:

Firebase-15.0.1取决于最新的Google服务

classpath 'com.google.gms:google-services:3.3.0'

请参阅此blog post

然而,当我升级google服务3.3.0和firebase-15.0.1时,我遇到了其他无法解决的问题。使用Google-Services 3.3.0,gradle抱怨我导入的库模块:

implementation project(':lib')

Gradle Error:

More than one variant of project :lib matches the consumer attributes:

- Configuration ':lib:debugApiElements' variant android-aidl:
  - Found artifactType 'android-aidl' but wasn't required.
  - Required com.android.build.api.attributes.BuildTypeAttr 'debug' and found compatible value 'debug'.
  - Found com.android.build.api.attributes.VariantAttr 'debug' but wasn't required.
  - Required 
com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
  - Required org.gradle.usage 'java-api' and found compatible value 

所以我的建议再也不是升级。