Home > Mobile >  How can I disable renaming names of fragments classes during obfuscation?
How can I disable renaming names of fragments classes during obfuscation?

Time:08-03

Which ProGuard/R8 rules to use?

Currently only Activites aren't renamed

enter image description here

I need to keep names of Fragment for screens logging as well but the code itself in fragments should be obfuscated

CodePudding user response:

I would highly suggest you to read this documentation: https://www.guardsquare.com/manual/configuration/usage#keepoptions

Also use the -keepnames option in your proguard.cfg

I'll give you an example:

-keepnames class_specification

You could also use this in order to avoid obuscation of any class name:

-keepnames class ** { *; }

CodePudding user response:

Simply add proguardrules to keep your directory which contains all the fragments so write below proguardrules

-keep public class com.your_app_name.app.view.fragments.** {*;}

Ex: My package name is com.tdscalculator.app and all my fragments are inside com -> tdscalculator -> app -> view -> fragments so for this example I have written above proguardrule so modify this rule accordingly

If you want to keep fragments of different directories then mention all fragments using below proguardrules

-keepnames class  com.your_app_name.app.view.fragments.HomeFragment{}

Happy Coding :)

  • Related