我正在尝试为我的Android项目设置proguard.我的应用程序项目中只有很少的代码,但引用了一个库项目,它包含绝大多数代码和任何其他外部jar.话虽这么说,我不知道如何设置proguard考虑到这一点.现在我的proguard配置文件只是来自ProGuard网站的Android示例.我一直在寻找,但没有找到很多或任何关于使用proguard与图书馆项目,只是罐子的文件.我是新手,所以任何朝着正确方向的努力都会很棒.谢谢.
Phi*_*hil 18
编辑
正如@BornToCode指出的那样,一个不同的答案(最初发布在这里)更好地解释了Proguard如何处理库项目.此外,这个引用的问题比我原来的回答中的链接更有趣,更有整体声誉.报价单:
库项目本身不运行ProGuard,因此它们不使用任何配置.
应用程序项目模糊了整个代码库,包括任何引用的库,因此需要对应用程序代码和库代码进行适当的配置.
旧答案 (没错,可能不是最好的方法)
库项目更像是一种将项目链接到Eclipse中的jar的便捷方式.构建项目时,编译器可见的库项目的唯一组件是jar文件.
如果你想混淆那个罐子,看看这篇文章:
如何在Eclipse中使用Proguard对Android库(.jar文件)进行模糊处理
Jon*_*Jon 13
我有必要在库项目中指定库的proguard设置(比如哪些库文件不应被混淆).我发现我还需要在我的应用程序中包含我的库模块中的proguard配置.为此,我将以下内容添加到defaultConfig我的库中的部分build.gradle
apply plugin: 'com.android.library'
android {
defaultConfig {
consumerProguardFiles 'proguard-rules.pro'
}
}
Run Code Online (Sandbox Code Playgroud)
然后在我的库模块中配置proguard-rules.pro文件以保留重要序列化类的名称.
另请参阅consumerProguardFilesgradle参考
| 归档时间: |
|
| 查看次数: |
20297 次 |
| 最近记录: |