谷歌已经为 Android Studio 2.1 的 Android 开发者发布了他们新的JACK 编译器的测试版本。
我的问题是,我们如何使用 JACK 为 APK 启用混淆功能?下面的文章说 JACK 在本地执行混淆并消除了对 Proguard 的需要:
而下面的文章说 JACK 使用 Proguard 配置文件(即.pro
文件)来执行混淆:
它还说
在此过程中,Jack 还处理任何请求的代码缩小(缩小和/或混淆)。
这到底是什么意思?我们是否必须使用该minifyEnabled
选项并定义一个.pro
包含 Proguard 选项的文件?
总之:
我们究竟如何使用 JACK 启用混淆功能?我们是否可以绕过 Proguard 的使用,或者即使我们使用 JACK 编译,Proguard 是否在混淆过程中起到了事实上的作用?
JACK 目前是否支持混淆,它是否在 Android Studio 的稳定(即非 beta/canary)版本中可用?
笔记:
我已经提到了以下帖子:
进一步参考:
更新:
Matt Insko的回答很有帮助,但我想要更详细、更准确、更规范的答案。