Android ProGuard文件中的所有声明都做什么?

Android ProGuard文件中的所有声明都做什么?,android,proguard,Android,Proguard,我有Proguard配置文件,但我无法理解每个声明的含义,因为它没有在Android SDK中正确记录。如果有人真的理解了意思,可以帮我理解每一个声明 -optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* -don

我有Proguard配置文件,但我无法理解每个声明的含义,因为它没有在Android SDK中正确记录。如果有人真的理解了意思,可以帮我理解每一个声明

-optimizationpasses 5

-dontusemixedcaseclassnames

-dontskipnonpubliclibraryclasses

-verbose

-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

-dontpreverify

-repackageclasses ''

-allowaccessmodification

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class com.android.vending.licensing.ILicensingService


-keepattributes *Annotation*

-keepclassmembers class * extends android.content.Context {
    public void *(android.view.View);
    public void *(android.view.MenuItem);
}

-keepclassmembers class * {
    @android.webkit.JavascriptInterface <methods>;
}



-keepattributes Signature

-keep class sun.misc.Unsafe { *; }

-assumenosideeffects class android.util.Log {
    public static *** d(...);
    public static *** v(...);
}


-keepclasseswithmembernames class * {
    native <methods>;
}


-keep public class * extends android.view.View {
    public <init>(android.content.Context);
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>(android.content.Context, android.util.AttributeSet, int);
    public void set*(...);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}


-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}


-keep class * implements android.os.Parcelable {
  public static final android.os.Parcelable$Creator *;
}


-keepclassmembers class **.R$* {
    public static <fields>;
}
-优化过程5
-dontusemixedcaseclassnames
-DontskipnonPublicLibraryClass
-冗长的
-优化!代码/简化/算术,!字段/*,!类/合并/*
-不要翻转
-重新打包类“”
-允许访问修改
-keep public class*扩展android.app.Activity
-keep public class*扩展android.app.Application
-keep public class*扩展了android.app.Service
-keep public class*扩展了android.content.BroadcastReceiver
-keep public class*扩展了android.content.ContentProvider
-保持公共类com.android.vending.licensing.ILicensingService
-keepattributes*注释*
-keepclassmembers类*扩展了android.content.Context{
public void*(android.view.view);
public void*(android.view.MenuItem);
}
-keepclassmembers类*{
@android.webkit.JavascriptInterface;
}
-保留署名
-保持类sun.misc.Unsafe{*;}
-assumenosideeffects类android.util.Log{
公共静态***d(…);
公共静态***v(…);
}
-KeepClassSwithMemberNames类*{
本地人;
}
-keep public class*扩展了android.view.view{
public(android.content.Context);
public(android.content.Context、android.util.AttributeSet);
public(android.content.Context,android.util.AttributeSet,int);
公共无效集*(…);
}
-keepclassswithmembers类*{
public(android.content.Context、android.util.AttributeSet);
}
-keepclassswithmembers类*{
public(android.content.Context,android.util.AttributeSet,int);
}
-keepclassmembers枚举*{
公共静态**[]值();
公共静态**valueOf(java.lang.String);
}
-keep class*实现android.os.Parcelable{
公开静态最终android.os.Parcelable$Creator*;
}
-keepclassmembers类**.R$*{
公共静态;
}

如果您想解释所有这些,那么这太宽泛了。哪一个是你真正遇到麻烦的?如果你想解释所有这些,这太宽泛了。哪一个是你真正遇到麻烦的?