android 실제 프로젝트에서 파일 혼동 설정 (참고 방법)

4615 단어
이전에 프로젝트에 대한 혼동에 대해 잘 알지 못했기 때문에 정식 프로젝트를 포장할 때 특별히 한 번 알아보고 기록을 하고 잊어버리지 않도록 합니다!
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

-keepattributes Signature
-keep class android.support.v4.** { *; }

-ignorewarnings

-dontwarn android.support.**
-keepattributes EnclosingMetho

-keepclassmembers class * {
   public (org.json.JSONObject);
}

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

-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 * extends android.app.backup.BackupAgentHelper               #          
-keep public class * extends android.preference.Preference                      #          
-keep public class com.android.vending.licensing.ILicensingService              #          


  #   R     :
-keep class **.R$* {*;}


 #          
-keep public abstract interface com.huawei.android.airsharing.listener{
public protected ;
}
-keep public abstract interface com.huawei.android.airsharing.api{
public protected ;
}


-keepclasseswithmembernames class * {                                           #    native       
    native ;
}

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

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

-keepclassmembers class * extends android.app.Activity {                        #             
   public void *(android.view.View);
}

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

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

#gson
-keep class **.bean.** { *; }

#webview
-keepclassmembers class fqcn.of.javascript.interface.for.webview {
   public *;
}

#databinding
-dontwarn android.databinding.**
-keep class android.databinding.** { *; }

# OkHttp3
-dontwarn com.squareup.okhttp3.**
-keep class com.squareup.okhttp3.** { *;}
-dontwarn okio.**

# Okio
-dontwarn com.squareup.**
-dontwarn okio.**
-keep public class org.codehaus.* { *; }
-keep public class java.nio.* { *; }

# retrofit
-dontwarn okio.**
-dontwarn javax.annotation.**

#  
-keep class com.alipay.android.app.IAlixPay{*;}
-keep class com.alipay.android.app.IAlixPay$Stub{*;}
-keep class com.alipay.android.app.IRemoteServiceCallback{*;}
-keep class com.alipay.android.app.IRemoteServiceCallback$Stub{*;}
-keep class com.alipay.sdk.app.PayTask{ public *;}
-keep class com.alipay.sdk.app.AuthTask{ public *;}


#rx
-dontwarn sun.misc.**
-keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
   long producerIndex;
   long consumerIndex;
}
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
    rx.internal.util.atomic.LinkedQueueNode producerNode;
}
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
    rx.internal.util.atomic.LinkedQueueNode consumerNode;
}
-dontnote rx.internal.util.PlatformDependent

#eventBus
-keepattributes *Annotation*
-keepclassmembers class ** {
    @org.greenrobot.eventbus.Subscribe ;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }
# Only required if you use AsyncExecutor
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
    (Java.lang.Throwable);
}

#    
#-keep class com.tecsun.mobileintegration.** {*;}
#-keep public class com.tecsun.base.** { *; }
#-keep public class com.tecsun.tsb.network.** { *; }
#-keep public class com.andview.refreshview.** { *; }

참고 문장
  • 1. 안드로이드 혼동 설정 실례 실전 프로젝트 설명
  • 2, Rxjava와 RxAndroid 혼동 참조 설정
  • 좋은 웹페이지 즐겨찾기