同时使用AdMob和Google Play游戏服务时出错

时间:2017-08-30 19:04:56

标签: android libgdx admob google-play-services

我正在使用libgdx和Android工作室。我已成功实施谷歌游戏服务(排行榜等)。现在我想实现admob,但是我得到了错误。

这是我的build.gradle的一部分:

project(":android") {
apply plugin: "android"

configurations { natives }

dependencies {
    compile project(":core")
    compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
    compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-arm64-v8a"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86_64"
    compile 'com.google.android.gms:play-services-games:11.2.0'
    compile 'com.google.android.gms:play-services-ads:11.2.0'
    //compile 'com.google.android.gms:play-services:10.0.1'
    compile fileTree(dir: '../libs', include: '*.jar')
    compile project(":BaseGameUtils")
}

}

如果我按下build->清理项目,一切似乎都很好,但是当我想在Android手机上运行应用程序时,我收到此错误:

Error:Execution failed for task 
':android:transformClassesWithJarMergingForRelease'.
> com.android.build.api.transform.TransformException: 
java.util.zip.ZipException: duplicate entry: 
com/google/android/gms/internal/zzqv.class

compile 'com.google.android.gms:play-services-ads:11.2.0'部分会让事情变得混乱。如果我删除该行,一切都像以前一样工作,但我不能使用AdMob。

任何人都知道问题可能是什么?

当我使用Eclipse时,我将google-play-service库作为项目包含在内,并且不需要在build.gradle中添加任何内容...为什么它在AndroidStudios中有所不同?

1 个答案:

答案 0 :(得分:0)

这是由于工件不匹配/版本冲突造成的。

删除

compile 'com.google.android.gms:play-services-games:11.2.0'

来自root build.gradle文件的android dependencies标记,BaseGameUtils已经具有该依赖关系。检查build.gradle模块的BaseGameUtils中的支持版本。

此外,最好使用来自libs文件夹的repo insted的工件。

您也可以注入补间引擎

repositories {
    maven { url "https://jitpack.io" }
}

compile 'com.github.arcnor:universal-tween-engine:6.3.4'
compile 'com.github.arcnor:universal-tween-engine:6.3.4:sources'