Obfuscation 保留类方法,但在proguard中混淆包

Obfuscation 保留类方法,但在proguard中混淆包,obfuscation,proguard,Obfuscation,Proguard,com.company.package1.CLASS -公开无效方法a() -公共无效方法b() -公开无效方法c() 该类有3个公共方法,我需要保留它们,但包可能会被删除。也就是说,预期的结果可能是 a、 b.c.CLASS或a.b.c.D(或者,类名也被混淆) -公开无效方法a() -公共无效方法b() -公开无效方法c() 我写了一些脚本,但如何扩展它们以满足我的需求 -继续上课 com.company.package1.CLASS{ 公众; } -重新打包类“” -允许访问修改 您可以

com.company.package1.CLASS
-公开无效方法a()
-公共无效方法b()
-公开无效方法c()

该类有3个公共方法,我需要保留它们,但包可能会被删除。也就是说,预期的结果可能是

a、 b.c.CLASS或a.b.c.D(或者,类名也被混淆)
-公开无效方法a()
-公共无效方法b()
-公开无效方法c()

我写了一些脚本,但如何扩展它们以满足我的需求

-继续上课
com.company.package1.CLASS{
公众;
}
-重新打包类“”
-允许访问修改

您可以使用
-keepclassmembers
而不是
-keep
--cfr。ProGuard手册>用法>

您可以使用
-keepclassmembers
而不是
-keep
--cfr。ProGuard手册>用法>

使用keep with AllowFusion修饰符,如下所示


-keep,allowbFusion类xx
使用keep和allowbFusion修饰符,如下所示


-keep,allowFusionclass xx

这将保留类及其成员(即使未使用),但只更改其名称?如果没有,怎么办?我想对某个包名中的所有类执行此操作。这将保留类及其成员(即使未使用),但只更改它们的名称?如果没有,怎么办?我想对包名中的所有类执行此操作。
    -keep class 
        com.company.package1.CLASS {
        public <methods>;
    }

    -repackageclasses ''
    -allowaccessmodification