Ошибка Gradle после включения facebook sdk

Сразу после добавления facebook-audi-network-sdk в мой файл gradle я начал получать ошибки, первое, что я исправил, добавив multiDexEnabled true, после этого я продолжаю получать эту ошибку

Не удалось выполнить задачу ': app: transformClassesWithJarMergingForDebug'.

com.android.build.api.transform.TransformException: java.util.zip.ZipException: повторяющаяся запись: com/google/android/gms/internal/zzqa.class

Вот мой список зависимостей в build.gradle

 dependencies {
   compile fileTree(dir: 'libs', include: ['*.jar'])
   testCompile 'junit:junit:4.12'
   compile 'com.android.support:appcompat-v7:23.1.1'
   compile 'com.mcxiaoke.volley:library:1.0.17'
   compile 'com.android.support:recyclerview-v7:23.1.1'
   compile 'com.android.support:design:23.1.1'

   compile 'com.google.android.gms:play-services-gcm:8.4.0'
   compile 'com.google.android.gms:play-services-auth:8.4.0'
   compile 'com.google.android.gms:play-services-analytics:8.4.0'

   compile 'com.facebook.android:facebook-android-sdk:4.10.0'
   compile 'com.facebook.android:audience-network-sdk:4.10.0'
   compile 'joda-time:joda-time:2.7'
 }

После запуска gradle с зависимостями -q вот мой скриншот, я думаю, что проблема связана с библиотеками сервисов google play, которые видят, что facebook.android:audience-network-sdk зависит от аналитики 7.8.0, хотя я уже включил последнюю версию 8.4.0 в моих зависимостях я не уверен. Как я могу это исправить?

1 ответ

Я наконец избавился от ошибки. Таким образом, проблема была с com.google.android.gms: play-services-ads-8.1.0. Вы можете видеть из изображения, что это было 8.1.0, и другие зависимости игры были 8.4.0.

Так что эти два способа сработали. Один должен был изменить зависимость в

 compile ('com.facebook.android:facebook-android-sdk:4.10.0'){
    exclude group:"com.google.android.gms"
 }

Но проблема в том, что это может быть проблемой, так как в других моих зависимостях у меня не было play-services-ads: 8.4.0 '

Таким образом, способ, которым я решил это просто добавить одну строку

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

Таким образом, все работало отлично, потому что при компиляции gradle он автоматически заменял 8.1.0 на 8.4.0.

Вот мой окончательный список зависимостей, который работал

dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
     testCompile 'junit:junit:4.12'
     compile 'com.android.support:appcompat-v7:23.1.1'
     compile 'com.mcxiaoke.volley:library:1.0.17'
     compile 'com.android.support:recyclerview-v7:23.1.1'
     compile 'com.android.support:design:23.1.1'

     compile 'com.google.android.gms:play-services-gcm:8.4.0'
     compile 'com.google.android.gms:play-services-auth:8.4.0'
     compile 'com.google.android.gms:play-services-analytics:8.4.0'

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

     compile 'com.facebook.android:facebook-android-sdk:4.10.0'
     compile 'com.facebook.android:audience-network-sdk:4.10.0'
     compile 'joda-time:joda-time:2.7'

}

Другие вопросы по тегам