问题
I want to obfuscate only some packages:
com.foo.*
com.bar.*
I have tried
-keepclasseswithmembers class **, !com.foo.**, !com.bar.** { *; }
and
-keepclasseswithmembers class !com.foo.** { *; }
-keepclasseswithmembers class !com.bar.** { *; }
In both cases the classes from com.foo.* and com.bar.* was NOT obfuscated.
回答1:
This should work
-keep class !com.foo.**,!com.bar.** { *; }
You can find a summary of the various -keep options at http://proguard.sourceforge.net/manual/usage.html#keepoverview
You can find the explanation of ProGuard's regular expressions at http://proguard.sourceforge.net/manual/usage.html#filters
来源:https://stackoverflow.com/questions/4536016/how-can-i-obfuscate-only-com-foo-and-com-bar-proguard