Android Proguard模糊处理对活动不起作用?

Android Proguard模糊处理对活动不起作用?,android,proguard,Android,Proguard,我在我的项目上运行了proguard,但它没有混淆我的活动名称。我试过几条规则,但都不管用。我不知道它的确切含义,例如下面的规则: -keep public class models.* { *; } 它们之间有什么区别 -keepclassmembers class * { } 及 我很难理解这些规则是如何运作的。请提供帮助。在构建过程中,proguard检查AndroidManifest并保留所有活动类。这是您的应用程序运行所必需的。您不应该混淆扩展android.app.Activ

我在我的项目上运行了proguard,但它没有混淆我的活动名称。我试过几条规则,但都不管用。我不知道它的确切含义,例如下面的规则:

-keep public class models.* {
  *;
}
它们之间有什么区别

-keepclassmembers class * {
}


我很难理解这些规则是如何运作的。请提供帮助。

在构建过程中,proguard检查AndroidManifest并保留所有活动类。这是您的应用程序运行所必需的。您不应该混淆扩展android.app.Activity的类


见:


这两者有什么区别。。。keepclassmembers和。。。Keepclassswithmembers

根据文件:

-keepclassmembers

指定要保留的类成员(如果其类为 也保存了下来。例如,您可能希望保留所有序列化 实现可序列化的类的字段和方法 接口

-保留类成员

根据条件指定要保留的类和类成员 所有指定的类成员都存在。比如你 可能希望保留所有具有main方法的应用程序,而不是 必须明确列出它们


请参阅:

在构建过程中,proguard检查AndroidManifest并保留所有活动类。这是您的应用程序运行所必需的。您不应该混淆扩展android.app.Activity的类


见:


这两者有什么区别。。。keepclassmembers和。。。Keepclassswithmembers

根据文件:

-keepclassmembers

指定要保留的类成员(如果其类为 也保存了下来。例如,您可能希望保留所有序列化 实现可序列化的类的字段和方法 接口

-保留类成员

根据条件指定要保留的类和类成员 所有指定的类成员都存在。比如你 可能希望保留所有具有main方法的应用程序,而不是 必须明确列出它们


请参阅:

据我所知,ProGuard只能对Java代码(而不是XML)进行操作,因此如果它们混淆了活动名称,则会弄乱清单。所以,也许android插件会自动添加一些规则,以避免弄乱清单声明的内容,这是我们开发人员不应该弄乱的。所有这些都只是假设和推断,而不是实际的知情答案。据我所知,ProGuard只能对Java代码(而不是XML)进行操作,因此,如果它们混淆了活动名称,就会弄乱清单。所以,也许android插件会自动添加一些规则,以避免弄乱清单声明的内容,这是我们开发人员不应该弄乱的。所有这些都只是假设和推断,而不是实际的知情答案。
-keepclasseswithmembers class * {

}