【问题标题】:Couldn't build android gradle with Crashlytics 2.6.7 and io.branch.sdk.android.library:2+ while proguard enable?启用 proguard 时无法使用 Crashlytics 2.6.7 和 io.branch.sdk.android.library:2+ 构建 android gradle?
【发布时间】:2017-03-30 06:37:42
【问题描述】:

我的 Gradle 设置:

compile('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
    transitive = true;
}

compile('io.branch.sdk.android:library:2.+') {
    transitive = true;
}

使用上面的 crashlytics 和 branch.io 尝试在启用 proguard 的情况下构建 gradle。我遇到了错误。

Warning:Exception while processing task java.io.IOException: Can't write [/Users/Documents/test/andriod-test/app/build/intermediates/transforms/proguard/production/release/jars/3/1f/main.jar] (Can't read [/Users/Documents/test/andriod-test/app/build/intermediates/classes/production/release(;;;;;;**.class)] (Can't read [com] (Can't read [crashlytics] (Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class])))))))) Error:java.lang.RuntimeException: Job failed, see logs for details Error:java.io.IOException: Can't write [/Users/Documents/test/andriod-test/app/build/intermediates/transforms/proguard/production/release/jars/3/1f/main.jar] (Can't read [/Users/Documents/test/andriod-test/app/build/intermediates/classes/production/release(;;;;;;**.class)] (Can't read [com] (Can't read [crashlytics] (Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class])))))))) Error:java.io.IOException: Can't read [/Users/Documents/test/andriod-test/app/build/intermediates/classes/production/release(;;;;;;**.class)] (Can't read [com] (Can't read [crashlytics] (Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class]))))))) Error:java.io.IOException: Can't read [com] (Can't read [crashlytics] (Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class])))))) Error:java.io.IOException: Can't read [crashlytics] (Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class]))))) Error:java.io.IOException: Can't read [android] (Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class])))) Error:java.io.IOException: Can't read [answers] (Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class]))) Error:java.io.IOException: Can't read [shim] (Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class])) Error:java.io.IOException: Can't read [R.class] (Duplicate zip entry [com/crashlytics/android/answers/shim/R.class]) Error:java.io.IOException: Duplicate zip entry [com/crashlytics/android/answers/shim/R.class]

【问题讨论】:

  • 最近几天遇到同样的错误兄弟...找不到解决方案,stackoverflow.com/questions/43094195/…
  • 您是否尝试在 gradle 设置中排除 io.branch 'answers-shim' 模块
  • 是的,但仍然出现错误。实际上,我也在使用 Realm;我是否也必须从其库中排除某些模块?检查我的问题,我已经分享了我的问题的链接。
  • 尝试从 gradle 文件中的 'io.branch' 中排除 'answers-shim' 并为 dagger 和 crashlytics 添加必要的 proguard 条目。
  • 由于这些是警告,您可以在构建 gradle 时添加以下行以忽略这些警告。 -dontwarn com.crashlytics.android.answers.shim.**

标签: android android-proguard branch.io crashlytics-android android-gradle-2.2


【解决方案1】:

由于错误消息表明某些“answers-shim”类重复,一个来自 crashlytics,另一个来自 io.branch 本身,我所做的是排除 io.branch 模块“answers-shim” ' 通过编辑下面的 gradle 文件。

compile('io.branch.sdk.android:library:2.+') {
    transitive = true;
    exclude module: 'answers-shim'
}

将“answer-shim”模块排除到 io.branch.sdk.library gradle 设置中,如上所示。

在您的 proguard 文件中添加以下行以忽略警告:

-dontwarn com.crashlytics.android.answers.shim.**

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-28
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 2015-02-25
    • 2015-02-06
    • 1970-01-01
    相关资源
    最近更新 更多