我是 proguard 的新手,正在开发 android 应用程序,在使用默认的 android proguard 配置文件(来自 sdk)构建后,没有任何效果,我的假设与在运行时在 R 文件上查找资源的代码有关(是的,丑陋的扫描文件)并搜索资源 ID)。 我无法从 proguard 文档中理解如何防止 progurad 处理文件。
我认为了解我的应用程序失败原因的最佳方法是让 proguard 一开始不执行任何操作,然后让它一一缩小特定的内容。
所以我想知道的是如何告诉 proguard 保留我的所有类(甚至是无法访问的代码)(这可能吗?)。
然后(希望我的应用程序能够工作)告诉他缩小并混淆特定的类。
尝试动态加载 R$id 文件时,我收到的错误是文件未找到异常。
最佳答案
在您的 proguard.cfg
中,您可以强制 Proguard 保留某些类:
-keep class com.myapp.SomeClass { *; }
甚至整个包:
-keep class com.myapp.** { *; }
对于仅从 XML 文件引用的类,您当然必须执行此操作。
关于android - proguard 之后我的应用程序无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11115840/