图书馆项目和应用项目的Proguard文件

时间:2017-05-14 21:53:35

标签: android proguard obfuscation android-proguard

我正在使用第三方.aar项目,他们已经在aar项目中启用了proguard。在我的应用程序项目中,我也启用了Proguard并且它给了我错误。

那么,我是否需要将他们的(.aar项目)proguard规则包含在我的proguard配置文件中,还是有其他可能性?

我已经在博客和帖子中看到,最好的方法是在没有proguard的情况下包含.aar项目,然后在aar和应用程序项目上运行proguard。

如果我在应用程序上运行proguard会影响导入的库(已编程)代码吗?

1 个答案:

答案 0 :(得分:1)

  

那么,我是否需要将他们的(.aar项目)proguard规则包含在我的proguard配置文件中,还是有其他可能性?

引用the documentation

  

您可以通过向库中添加包含ProGuard指令的ProGuard配置文件来启用库的代码缩减。构建工具将此文件嵌入到库模块的生成的AAR文件中。将库添加到应用程序模块时,库的ProGuard文件会附加到应用程序模块的ProGuard配置文件(proguard.txt)。

因此,如果库模块enableLogging中有consumerProguardFiles 'lib-proguard-rules.txt'(请参阅文档),原则上这些规则将自动应用。

  

我在博客和帖子中读到,最好的方法是在没有proguard的情况下包含.aar项目,然后在aar和应用程序项目上运行proguard。

AFAIK,这是典型的计划。因此,在应用程序上应用ProGuard时,AAR将保持不变。

  

如果我在应用程序上运行proguard会影响导入的库(已编程)代码吗?

AFAIK,图书馆的代码不应该通过ProGuard运行。