# Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in C:\Users\Administrator\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the proguardFiles # directive in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; # alipay -dontwarn com.alipay.** -keep class cn.alipay.** { *; } -dontwarn com.alipay.mobilesecuritysdk.** -keep class cn.alipay.mobilesecuritysdk.** { *; } #==================gson========================== -dontwarn com.google.** -keep class com.google.gson.** {*;} -keep class com.loopj.android.http.** {*;} -keep class com.ta.utdid2.** {*;} -keep class com.ut.device.** {*;} -keep class HttpUtils.HttpFetcher{*;} -keep class com.juefeng.sdk.juefengsdk.base.constant.** {*;} -keep class com.juefeng.sdk.juefengsdk.services.bean.** {*;} -keep class com.juefeng.sdk.juefengsdk.services.http.** {*;} -keep class com.juefeng.sdk.juefengsdk.ui.activity.** {*;} # 保持哪些类不被混淆 -keep public class * extends android.app.Fragment -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 #如果有引用v4包可以添加下面这行 -keep public class * extends android.support.v4.app.Fragment -keepclasseswithmembers class * { # 保持自定义控件类不被混淆 public <init>(android.content.Context, android.util.AttributeSet); } -keepclasseswithmembers class * {# 保持自定义控件类不被混淆 public <init>(android.content.Context, android.util.AttributeSet, int); } # webview + js -keepattributes *JavascriptInterface* # keep 使用 webview 的类 -keepclassmembers class com.juefeng.sdk.juefengsdk.ui.activity.WebViewActivity { public *; } # keep 使用 webview 的类的所有的内部类 -keepclassmembers class com.juefeng.sdk.juefengsdk.ui.activity.WebViewActivity*{ *; } -keep class com.juefeng.sdk.juefengsdk.JFSDK{*;} -keep class com.juefeng.sdk.juefengsdk.base.utils.ReflectUtils{*;} -keep class com.juefeng.sdk.juefengsdk.base.utils.JsonUtils{*;} -keep class com.juefeng.sdk.juefengsdk.interf.SDKEventListener{*;} #保证 类中的某个方法不被混淆 -keep class com.juefeng.sdk.juefengsdk.ui.widget.LoginRegisterDialog{ private void refreshIsUserPhoneExist(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean); private void refreshAccountOrPhoneExist(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean); private void refreshRegistByUserName(com.juefeng.sdk.juefengsdk.services.bean.LoginBean); private void refreshRegist(com.juefeng.sdk.juefengsdk.services.bean.LoginBean); private void refreshLogin(com.juefeng.sdk.juefengsdk.services.bean.LoginBean); } -keep class com.juefeng.sdk.juefengsdk.ui.widget.RealNameDialog{ private void refreshRealName(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean); } -keep class com.juefeng.sdk.juefengsdk.ui.widget.PopView{ private void refreshLogin(com.juefeng.sdk.juefengsdk.services.bean.LoginBean); } -keep class com.juefeng.sdk.juefengsdk.base.utils.SyncGameData{ private void refreshSyncGameData(com.juefeng.sdk.juefengsdk.services.bean.SyncGameInfoBean); } #}
转载于:https://my.oschina.net/u/3407628/blog/1562975