Dexguard 删除 AndroidManifest.xml
Posted
技术标签:
【中文标题】Dexguard 删除 AndroidManifest.xml【英文标题】:Dexguard removing AndroidManifest.xml 【发布时间】:2019-06-29 10:44:36 【问题描述】:升级到 Dexguard 8.3(从 8.1)后,Proguard/Dexguard 定义没有任何变化,我们开始看到 androidManifest 从生成的 APK 中剥离,在尝试安装时导致以下错误:
adb: failed to install app-release.apk: Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION: Failed to parse /data/app/vmdl173476881.tmp/base.apk: AndroidManifest.xml]
我们的定义是:
proguardFile getDefaultDexGuardFile('dexguard-release.pro')
proguardFile 'dexguard-prod.pro' (our own custom)
proguardFile 'proguard-rules.pro' (our own custom)
我已经尝试将以下内容添加到我们自己的 dexguard-prod.pro 文件中(根据 Dexguard 自己的文档,默认配置应包含此内容),但没有帮助:
-keepresourcefiles AndroidManifest.xml
任何想法或帮助将不胜感激。
【问题讨论】:
原来 Dexguard 8.3 并不完全支持 Gradle 3.3.0。降级到 3.2.1 后问题就解决了。 【参考方案1】:事实证明,Dexguard 8.3 并不完全支持 Gradle 3.3.0。降级到 3.2.1 后问题就解决了。
【讨论】:
DexGuard 8.4 中增加了对 Android gradle 插件 3.3.0 的支持。以上是关于Dexguard 删除 AndroidManifest.xml的主要内容,如果未能解决你的问题,请参考以下文章