我想用Proguard混淆AndroidManifest.xml

use*_*302 3 android proguard android-manifest

我能用Proguard混淆AndroidManifest.xml文件吗?

我想在我的proguard.config文件中写入源代码.(-adaptresourcefilenames AndroidManifest.xml)

但它不起作用.

Eri*_*une 18

标准的Android版本构建仅将ProGuard应用于已编译的字节码,而不应用于任何资源文件.因此它无法适应AndroidManifest.xml之类的文件.

此外,这些构建过程首先aapt将AndroidManifest.xml和其他XML文件转换为二进制版本,以便更有效地打包和使用.Aapt还为ProGuard写了一些配置.ProGuard只能以文本格式解析和调整资源文件,因此它不适用于二进制版本.

DexGuard是专门针对Android的ProGuard的商业扩展,简化了构建过程.它还尽可能地混淆和优化二进制XML文件.正如尼古拉提到的,一些班级名称仍然无法混淆; 特别是可能从其他应用程序引用的那些.

(我是ProGuard和DexGuard的开发人员)


Nik*_*kov 1

你不能:系统需要了解你的组件(活动、服务等)。你也不能混淆清单中组件引用的名称。默认的 ProGuard 配置明确排除了这些。