# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in C:\Users\kyle\AppData\Local\Android\sdk1/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 *;
#}
-optimizationpasses 5
# 指定代码的压缩级别
-dontusemixedcaseclassnames
# 是否使用大小写混合
-dontpreverify
# 混淆时是否做预校验
-verbose
# 混淆时是否记录日志
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
# 混淆时所采用的算法
-libraryjars libs/lechangeSDK.jar
-libraryjars libs/gensee_baseplayer.jar
-libraryjars libs/gensee_common.jar
-libraryjars libs/gensee_doc.jar
-libraryjars libs/gensee_rtmpplayer.jarr
-libraryjars libs/gensee_video.jar
-libraryjars libs/gensee_hb.jar
-libraryjars libs/gensee_vod_ol.jar
-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
# 保持哪些类不被混淆
-keepclasseswithmembernames class * {
# 保持 native 方法不被混淆
native <methods>;
}
-keepclasseswithmembers class * {
# 保持自定义控件类不被混淆
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
# 保持自定义控件类不被混淆
public <init>(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 *;
}
-keep class **.R$* {
*;
}
-keepclassmembers class * {
void *(**On*Event);
}
-keepclassmembers class * {
public <init>(org.json.JSONObject);
}
-keep class com.github.test.** {*;}
-keep class android.support.v7.** { *; }
#过滤android.support.v7 注意这里v4还是v7要看gradle里面compile了那个扩展包
-keep interface android.support.constraint.** { *; }
-keep class com.alibaba.fastjson.** {*;}
-keep interface android.support.v4.app.**{*;}
-keep calss com.pxjy.app.student.ben.**{*;}
#过滤生成的实体类
#---------------------------------webview------------------------------------
-keepclassmembers class fqcn.of.javascript.interface.for.Webview {
public *;
}
-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, jav.lang.String);
}
#友盟相关的
-keep class com.umeng.**
-keep public class com.idea.fifaalarmclock.app.R$*{
public static final int *;
}
-keep public class com.umeng.fb.ui.ThreadView {
}
-dontwarn com.umeng.**
-dontwarn org.apache.commons.**
-keep public class * extends com.umeng.**
-keep class com.umeng.** {*; }
# *****************
# 友盟统计分析
-keepclassmembers class * { public <init>(org.json.JSONObject); }
-keepclassmembers enum com.umeng.analytics.** {
public static **[] values();
public static ** valueOf(java.lang.String);
}
#eventbus
-keepattributes *Annotation*
-keepclassmembers class ** {
@org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
<init>(java.lang.Throwable);
}
#glide
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
**[] $VALUES;
public *;
}
# Bugly
-dontwarn com.tencent.bugly.**
-keep class com.tencent.bugly.** {*;}
#nohttp
-dontwarn com.yolanda.nohttp.**
-keep class com.yolanda.nohttp.**{*;}
#ijk
-keep class tv.danmaku.ijk.media.**{*;}
# FastJson
-dontwarn com.alibaba.fastjson.**
-keep class com.alibaba.fastjson.** { *; }
-keepattributes Signature
-keepattributes *Annotation*
# 微信支付
-dontwarn com.tencent.mm.**
-dontwarn com.tencent.wxop.stat.**
-keep class com.tencent.mm.** {*;}
-keep class com.tencent.wxop.stat.**{*;}
# 支付宝钱包
-dontwarn com.alipay.**
-dontwarn HttpUtils.HttpFetcher
-dontwarn com.ta.utdid2.**
-dontwarn com.ut.device.**
-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 *;}
-keep class com.alipay.mobilesecuritysdk.*