在Android Studio中,编译一个签名APK后生成的ProGuard映射文件在哪里?
我不确定它是否不工作,或者我只是忘记了文件路径,我的强制谷歌/Stack Overflow搜索没有回答这个问题
在Android Studio中,编译一个签名APK后生成的ProGuard映射文件在哪里?
我不确定它是否不工作,或者我只是忘记了文件路径,我的强制谷歌/Stack Overflow搜索没有回答这个问题
当前回答
如果有人还在搜索mapping.txt:
在构建中启用minifyEnabled。Gradle必须设置为true
我使用的是Android Studio 4.2 Beta 4,标准设置是错误的。
如果minifyEnable设置为false,构建就不是“缩小”的,所以映射文件当然不是必要的,但google-play-console无论如何都会要求映射文件。
... 初学者很困惑
其他回答
这里有一张图片-你可以在映射文件夹中找到它:
我发现配置proguard将mapping.txt文件写入构建/目录树之外的位置更干净,这样可以更方便地检入版本控制。
要实现这一点,请将其放入您的proguard-rules中。支持文件:
-printmapping mapping.txt
这将(很可能)将其放置在与proguard-rules相同的目录中。支持文件。最终,你可能希望将它写入与APK文件相同的目录,并使用等效的名称(可能包括风味、构建类型等)。
注意:根据我的经验,这不会被proguard模板文件所否决(这是由评论者建议的另一个答案)。
更新:如果你有多种产品口味,那么这是一个更好的解决方案:https://stackoverflow.com/a/31116608/444761
Proguard[About]输出位置
<module_name>/build/outputs/mapping/<buildType>/
//e.g.
/Users/alex/Desktop/MyProject/MyModule/build/outputs/mapping/releasefree
如果有人还在搜索mapping.txt:
在构建中启用minifyEnabled。Gradle必须设置为true
我使用的是Android Studio 4.2 Beta 4,标准设置是错误的。
如果minifyEnable设置为false,构建就不是“缩小”的,所以映射文件当然不是必要的,但google-play-console无论如何都会要求映射文件。
... 初学者很困惑
我发现它没有被生成,所以我将其添加到规则文件中
-printmapping build/outputs/mapping/release/mapping.txt