Ошибка 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'
}