You need to enable JavaScript to run this app. ProGuard applymapping修改mapping.txt后,签名APK未应用新映射规则
优惠活动
大模型
产品
解决方案
定价
更多

ProGuard applymapping修改mapping.txt后,签名APK未应用新映射规则

解决applymapping修改后映射规则不生效的操作方案
  • 先核对配置引用关系:检查build.gradle中applymapping指向的文件路径,确认你修改的映射文件就是构建流程实际引用的文件;同时排查是否存在产品渠道、自定义构建变体层级的重复applymapping配置,这类配置优先级高于全局配置,会覆盖你修改的全局规则,导致新规则不生效。
  • 清除IDE Clean无法覆盖的全量构建缓存:
    • 关闭Android Studio,删除项目根目录下的.gradle隐藏全局缓存文件夹
    • 删除项目内所有模块的build目录,重点清理两类历史残留:app/build/outputs/mapping/下的旧混淆输出、app/build/intermediates/下的构建中间产物
  • 执行跳过缓存的强制构建:不要使用IDE自带的构建触发按钮,在项目根目录打开终端执行对应命令,强制跳过Gradle从本地缓存拉取旧混淆产物的逻辑:
    • Windows系统执行:gradlew.bat clean assembleRelease --no-build-cache
    • macOS/Linux系统执行:./gradlew clean assembleRelease --no-build-cache
  • 核心原因说明:Android Gradle Plugin 7.0以上版本默认使用R8替代原生ProGuard执行混淆流程,R8会对混淆任务的所有输入计算哈希值,只要哈希匹配就会直接复用缓存的旧混淆结果,不会重新读取映射规则。仅执行IDE的Clean Project操作,只会清空模块build目录,不会清除Gradle全局构建缓存,自然无法触发新规则的应用。

内容的提问来源于stack exchange,提问作者nashihu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.28 04:27:00