Android 使用Proguard时未生成mapping.txt文件

Android 使用Proguard时未生成mapping.txt文件,android,eclipse,android-studio,obfuscation,android-proguard,Android,Eclipse,Android Studio,Obfuscation,Android Proguard,我在使用proguard混淆我的应用程序时遇到了这个问题 我能够使用proguard,当我在android studio中创建新应用程序时,它会生成mapping.txt,但是当我尝试在从eclipse迁移到android studio的项目上使用proguard时,它不会生成mapping.txt 以下是我的proguard-rules.pro文件 -dontobfuscate -dontshrink -keepdirectories -keeppackagenames javax.mail.

我在使用proguard混淆我的应用程序时遇到了这个问题

我能够使用proguard,当我在android studio中创建新应用程序时,它会生成mapping.txt,但是当我尝试在从eclipse迁移到android studio的项目上使用proguard时,它不会生成mapping.txt

以下是我的proguard-rules.pro文件

-dontobfuscate
-dontshrink
-keepdirectories
-keeppackagenames javax.mail.**
-keeppackagenames javax.activation.**
-keeppackagenames com.sun.mail.**
-keeppackagenames myjava.**
-keeppackagenames org.apache.harmony.**
-keeppackagenames mailcap.**
-keeppackagenames mimetypes.**
-keep class javamail.** {*;}
-keep class javax.mail.** {*;}
-keep class javax.activation.** {*;}
-keep class javax.mail.internet.** {*;}

-keep class com.sun.mail.dsn.** {*;}
-keep class com.sun.mail.handlers.** {*;}
-keep class com.sun.mail.smtp.** {*;}
-keep class com.sun.mail.util.** {*;}

-keep class javax.ws.rs.** { *; }

-keep class mailcap.** {*;}
-keep class mimetypes.** {*;}
-keep class myjava.awt.datatransfer.** {*;}
-keep class org.apache.harmony.awt.** {*;}
-keep class org.apache.harmony.misc.** {*;}

-dontwarn com.fasterxml.jackson.**
-dontwarn java.awt.**
-dontwarn java.beans.Beans
-dontwarn javax.security.**

-ignorewarnings
-printmapping build/outputs/mapping/release/mapping.txt

尝试从文件中删除以下行:

-dontobfuscate
.
.
.
-printmapping build/outputs/mapping/release/mapping.txt

第一行似乎禁用了模糊处理,最后一行似乎将映射文件复制到了默认位置以外的位置。

从整个项目中删除-dontobfuscate,您将在build/outputs/mapping/下生成映射文件。

请发布您的proguard规则文件。我也遇到了类似问题。我忘了在build.gradle:)中将minifyEnabled更改为true。如果从proguard规则文件中删除-dontobfuscate,则如果更改版本代码,共享首选项数据将不起作用。@AhamadullahSaikat代码混淆与包含共享首选项的应用程序保存的数据无关。