Proguard keepclassmembers keeps class *
Proguard keepclassmembers keeps class *
我想知道这是做什么的:
-keepclassmembers class * {
private <fields>;
}
这条规则真的会阻止所有 类 被混淆吗?
根据 the documentation -keepclassmembers
规则这样做:
Specifies class members to be preserved, if their classes are
preserved as well.
在这种情况下,这意味着任何 class 中在收缩阶段幸存下来的所有私有字段都将被保留。
此规则不会阻止 classes 被剥离或混淆。
它仅防止保留 classes 的私有字段被剥离或混淆。
更新:
class *
匹配的内容可能有点令人困惑。一个 *
通常匹配 class 名称中不包含包分隔符的任何部分。但是在这种情况下,它匹配任何 class。文档说:
For convenience and for backward compatibility, the class name *
refers to any class, irrespective of its package.
我想知道这是做什么的:
-keepclassmembers class * {
private <fields>;
}
这条规则真的会阻止所有 类 被混淆吗?
根据 the documentation -keepclassmembers
规则这样做:
Specifies class members to be preserved, if their classes are preserved as well.
在这种情况下,这意味着任何 class 中在收缩阶段幸存下来的所有私有字段都将被保留。
此规则不会阻止 classes 被剥离或混淆。 它仅防止保留 classes 的私有字段被剥离或混淆。
更新:
class *
匹配的内容可能有点令人困惑。一个 *
通常匹配 class 名称中不包含包分隔符的任何部分。但是在这种情况下,它匹配任何 class。文档说:
For convenience and for backward compatibility, the class name * refers to any class, irrespective of its package.