2

Я добавил лидеров в свою игру для Android, используя google games api. Теперь я хотел добавить баннерные объявления с помощью Firebase 'Wizard' из Android Studio. Он строит хорошо, но когда я пытаюсь создать APK, я получаю следующее сообщение об ошибке:Смешивание игр в Google Play с Firebase

Error:Error converting bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files define Lcom/google/android/gms/internal/zzqv;

После использования мастера, мой файл build.gradle выглядит следующим образом:

apply plugin: 'com.android.application' 

    android { 
     compileSdkVersion 22 
     buildToolsVersion "22.0.1" 
     defaultConfig { 
     applicationId "xxx" 
     minSdkVersion 15 
     targetSdkVersion 22 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro' 
     } 
    } 
    } 

    dependencies { 

     compile fileTree(dir: 'libs', include: ['*.jar']) 


     compile project(':BaseGameUtils') 

     androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2',  { 
    exclude group: 'com.android.support', module: 'support-annotations' 
}) 

     compile 'com.google.android.gms:play-services-games:10.0.1' 
     compile 'com.google.firebase:firebase-ads:10.0.1' 

     testCompile 'junit:junit:4.12' 
    } 


    apply plugin: 'com.google.gms.google-services' 

Я попытался/прочитал все вещи, связанные с проблемой нескольких файлов dex, но ничего не сработало для меня. У кого-нибудь есть подсказка для меня? Нужно ли использовать Firebase для лидеров? Не удалось найти, как ...

Спасибо за любую помощь/подсказки Петерсон

+0

Я не могу воспроизвести проблему, используя аналогичный файл build.gradle. Пожалуйста, опубликуйте свой проект верхнего уровня (project) build.gradle. Кроме того, вы пытались сделать «чистый» проект? –

+1

Проверьте файл gradle для BaseGameUtils - я предполагаю, что у вас есть несколько версий play-services- *, которые включены. BaseGameUtils имеет ограниченное значение, поэтому вы можете просто скопировать пару статических методов прямо из вашего проекта. –

ответ

1

благодаря комментарий Клейтона Уилкинсона, я мог бы исправить мою проблему. Проблема заключалась в том, что BaseGameUtils все еще использовала/ссылалась на более старую версию игровых сервисов. Добавлена ​​правильная версия, и теперь она работает. Думаю, я опустил BaseGameUtils для своего следующего проекта.

Большое спасибо

0

Конечно, есть некоторые конфликты ... Но, дело в том, что если говорить в общих чертах, я имею в виду, вы используете компиляции «com.google.android.gms: Play- услуг: XXX ', все готово.

0

У меня была такая же ошибка, только что позволяет ProGuard работал (изменить ложное к истине):

buildTypes { 
    release { 
     minifyEnabled true //Here change false to true 
     proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^