#--------- remove logs start ---------------- -assumenosideeffects class com.lightgame.config.CommonDebug { private static String getLogTag(...); private static String getMethodName(); public static void logMethodName(...); public static void logParams(...); public static void logFields(...); public static void logMethodWithParams(...); } -assumenosideeffects class com.lightgame.utils.Utils { public static void log(...); } #--------- remove logs end ---------------- # TODO Dicard sourceFile in final release build but remain in internal build. -renamesourcefileattribute SourceFile # Keep Attribute -keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod,SourceFile,LineNumberTable # OrmLite -keep class com.j256.* -keepclassmembers class com.j256.* { *; } -keep enum com.j256.* -keepclassmembers enum com.j256.* { *; } -keep interface com.j256.* -keepclassmembers interface com.j256.* { *; } -dontwarn com.j256.** ### AutoScrollViewPager -keep class cn.trinea.android.* { *; } -keepclassmembers class cn.trinea.android.* { *; } -dontwarn cn.trinea.android.** ### Butterknife -keep public class * implements butterknife.Unbinder { public (**, android.view.View); } -keep class butterknife.* -keepclasseswithmembernames class * { @butterknife.* ; } -keepclasseswithmembernames class * { @butterknife.* ; } ### eventbus -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); } ### weiboSdk -keep class com.sina.weibo.sdk.** { *; } -dontwarn android.webkit.WebView -dontwarn android.webkit.WebViewClient ### wechatSdk ### TODO 这里用 com.tencent.*{*;} 不起效?但其它地方可以? -keep class com.tencent.**{*;} ### app models -keep class com.gh.common.view.* {*;} -keep class com.gh.gamecenter.db.info.* {*;} -keep class com.gh.gamecenter.entity.* {*;} -keep class com.gh.gamecenter.qa.entity.* {*;} -keep class com.gh.gamecenter.retrofit.* {*;} -keep class com.gh.gamecenter.eventbus.* {*;} -keep class com.gh.gamecenter.video.detail.* {*;} -keep class com.gh.gamecenter.home.gamecollection.* {*;} ### -keepclassmembers class * extends android.webkit.WebViewClient { public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap); public boolean *(android.webkit.WebView, java.lang.String); } -keepclassmembers class * extends android.webkit.WebViewClient { public void *(android.webkit.WebView, java.lang.String); } ### easypermission -keepclassmembers class * { @pub.devrel.easypermissions.AfterPermissionGranted ; } # TODO What's this ? -ignorewarnings ### Keep Annotation -keep @androidx.annotation.Keep class * -keepclassmembers class * { @androidx.annotation.Keep *; } ### 广点通 -dontwarn com.qq.gdt.action.** -keep class com.qq.gdt.action.* {*;} ### 阿里云上传 -keep class com.alibaba.sdk.android.oss.* { *; } -dontwarn okio.** -dontwarn org.apache.commons.codec.binary.** ### 视频相关 -keep class com.shuyu.gsyvideoplayer.video.* { *; } -dontwarn com.shuyu.gsyvideoplayer.video.** -keep class com.shuyu.gsyvideoplayer.video.base.* { *; } -dontwarn com.shuyu.gsyvideoplayer.video.base.** -keep class com.shuyu.gsyvideoplayer.utils.* { *; } -dontwarn com.shuyu.gsyvideoplayer.utils.** -keep class tv.danmaku.ijk.* { *; } -dontwarn tv.danmaku.ijk.** -keep public class * extends android.view.View{ *** get*(); void set*(***); public (android.content.Context); public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); } -keep class com.alibaba.sdk.android.*{*;} -keep class com.ut.*{*;} -keep class com.ta.*{*;} ### GDT & TEA -keep class com.gh.gamecenter.GdtHelper { *; } -keep class com.gh.gamecenter.TeaHelper { *; } ### 阿里云日志 -keep class com.aliyun.sls.android.producer.* { *; } -keep interface com.aliyun.sls.android.producer.* { *; } ### 中国移动一键登录 -dontwarn com.cmic.sso.sdk.** -keep class com.cmic.sso.sdk.* { *; } ### EasyFloat -keep class com.lzf.easyfloat.* {*;} ### 避免 WebChromeClient 被混淆 -keepclassmembers class * extends android.webkit.WebChromeClient{ public void openFileChooser(...); } # Flutter模块 -keep class com.gh.common.util.DirectUtils { public static void directToQa(...); public static void directToQaCollection(...); public static void directToFeedback(...); }