2017-08-30 4 views
0

J'utilise libgdx et les studios Android. J'ai implémenté avec succès des services de jeux google play (classements, etc.). Maintenant, je veux implémenter admob, mais j'ai des erreurs.Erreur lors de l'utilisation simultanée d'AdMob et des services de jeux Google Play

Cela fait partie de mon 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") 
} 

}

Si je presse build-> projets propres, tout semble bien, mais quand je veux lancer l'application sur mon téléphone Android , je reçois cette erreur:

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 

Il est la partie compile 'com.google.android.gms:play-services-ads:11.2.0' qui salit les choses. Si je supprime cette ligne, tout fonctionne comme avant, mais je ne peux pas utiliser AdMob.

Quelqu'un sait quel pourrait être le problème? Lorsque j'ai utilisé Eclipse, j'ai inclus la bibliothèque google-play-service en tant que projet, et je n'avais pas besoin d'ajouter quelque chose à build.gradle ... pourquoi est-ce différent dans AndroidStudios?

+0

ce qui est à l'intérieur 'libs'? – Aryan

+0

'tween-engine-api.jar' et' tween-engine-api-sources.jar'. Et dans mon android/libs il n'y a que des trucs liés à libgdx. – lijas

Répondre

0

Cela est dû à une incompatibilité d'artefact/conflit de version.

Supprimer

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

de votre balise dépendances android de fichiers racine build.gradle, BaseGameUtils ont déjà cette dépendance. Vérifier la version prise en charge dans build.gradle du module BaseGameUtils.

Aussi il est préférable d'utiliser artefact de repo insted du dossier libs.

Vous pouvez également injecter moteur tween

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'