有没有办法指定保留所有成员和&类的方法但不是它的构造函数。
答案 0 :(得分:0)
使用-keep
选项并指定构造函数名称。这里有更多信息(向下滚动到“保留选项”部分:Proguard Usage
例如,您可以使用!:
执行此类操作-keep class !com.yourcompany.YourClass {
<init>(...);
}
答案 1 :(得分:0)
这是一个不寻常的要求,但这应该有效:
-keepclassmembers class mypackage.MyClass {
<fields>;
*** !<init>(...);
}
第三行将方法与任何返回值,任何参数和任何名称匹配,<init>
除外。
使用-keep
保持班级也会自动保留其无参数构造函数。
在代码中实例化一个类当然也会导致保留相应的构造函数。