ProGuard doesn't generate mapping file

In your gradle file you must specifically set the minifyEnabled option to true.
This enables obfuscation. By doing so, it also applies the obfuscation rules that you define on your 'proguard-rules.pro' file.

buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

You can print the mapping and the seeds used (note that you need both to fully decode/understand the encrypted code) by applying the respective commands

-printseeds obfuscation/seeds.txt

and

-printmapping obfuscation/mapping.txt

An example of a basic proguard file is :

-optimizationpasses 5
-dontpreverify
-repackageclasses ''
-allowaccessmodification
-optimizations !code/simplification/arithmetic
-keepattributes *Annotation*

-verbose

-dump obfuscation/class_files.txt
-printseeds obfuscation/seeds.txt
-printusage obfuscation/unused.txt
-printmapping obfuscation/mapping.txt

Regards,


try to check setting -> InstantRun... it must be disabled :)


  1. Set minifyEnabled to true.
  2. Build generate APK.
  3. Look in the outputs folder for mappings file.[Don't Clean Project or it will be gone]