android - Proguard,请勿混淆gradle jars

标签 android gradle proguard

我在运行Android应用程序时遇到joda-time问题:

java.io.IOException: Resource not found: "org/joda/time/tz/data/ZoneInfoMap"

这是因为proguard似乎在joda-time jar文件中更改了名称或混淆了名为ZoneInfoMap的资源文件。

在我的配置中,我有:
-adaptresourcefilenames
-adaptresourcefilecontents
-keeppackagenames org.joda.time.**
-keep public class org.joda.time.** {public private protected *;}
-dontwarn org.joda.time.**

我读到我们可以添加
-libraryjars my.jar

但是,我不知道我的装有gradle的 jar 在哪里(逐渐选择自己,并创建自己的文件夹...)

我该怎么办才能正确运行我的应用程序?

最佳答案

我认为这不是proguard问题。这是gradle设置问题。

在gradle构建中,“src”中的资源文件不会包含在最终库或应用程序中。
因此,您应该在sourceSet(main或androidTest)中创建“resources”文件夹,并将资源文件(org / joda / time / tz / data / ZoneInfoMap)移动到该目录。

它会解决您的问题。

关于android - Proguard,请勿混淆gradle jars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24406116/

相关文章:

android - Gradle:上传 app-local-debug.apk 时出错:未知故障 ([CDS]close[0])

android-studio - 适用于 Android 工作室的 Bluemix Cloudant gradle 包?

android - appcompat-v7 v21.0.0 导致使用 Android v4.2.2 的三星设备崩溃

javascript - 为什么 PhoneGap inAppBrowser 事件仅在第二次触发?

android - 为什么找不到ID?

java - 删除角 View TableView

spring - Gradle有条件地运行多个 Spring 项目

android - 启用 Proguard 时出错

Android:依赖项和模块的 Proguard 规则

java - 如何使用 appium 处理已安装的应用程序?