我使用的是 Android Studio 版本 v2.1.2
,当我尝试签署发布版本时 Proguard
不起作用,构建严重失败。
According to this link from developer docs Jack 会自动混淆。
Handles shrinking, obfuscation, repackaging and multidex Using a separate package such as ProGuard is no longer necessary.
我必须禁用 minifyEnabled
标志并删除我们加载 proguard 文件的行;在这样做之后让它工作;我检查了通过执行上述操作生成的 apk
文件,我无法判断 Jack 是否真的混淆并减少了冗余代码,因为发布 apk
大小与调试 apk 相同
大小。
我需要了解如何使用较新的编译器进行混淆处理,因为文档并没有真正帮助。
我期待了解以下问题。
Jack
是否可以在没有 Proguard
文件的情况下工作?
有没有办法指定Proguard
文件?
最佳答案
Jack 编译器有自己的 Shrinker 和 Obfuscator,可以重新使用现有的 Proguard 规则(参见 supported directives)。
配置应该和以前一样,所以你需要在你的buildType配置中添加以下内容:
minifyEnabled true
proguardFile getDefaultProguardFile('proguard-android.txt')
proguardFile 'your-proguard-file.txt'
关于android - jack 似乎并没有自己混淆代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37874784/