326 lines
11 KiB
Prolog
326 lines
11 KiB
Prolog
# Add project specific ProGuard rules here.
|
|
# You can control the set of applied configuration files using the
|
|
# proguardFiles setting in build.gradle.
|
|
#
|
|
# For more details, see
|
|
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
|
|
# 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 *;
|
|
#}
|
|
|
|
# Uncomment this to preserve the line number information for
|
|
# debugging stack traces.
|
|
#-keepattributes SourceFile,LineNumberTable
|
|
|
|
# If you keep the line number information, uncomment this to
|
|
# hide the original source file name.
|
|
#-renamesourcefileattribute SourceFile
|
|
|
|
|
|
|
|
#设备标识符
|
|
-dontwarn com.github.gzuliyujiang.oaid.**
|
|
-keep class com.github.gzuliyujiang.oaid.** { *; }
|
|
|
|
#统一认证
|
|
-dontwarn com.anhui.police.auth.**
|
|
-keep class com.anhui.police.auth.** { *; }
|
|
|
|
#应用中心
|
|
-dontwarn com.anhui.police.market.sdk.**
|
|
-keep class com.anhui.police.market.** { *; }
|
|
|
|
#统一服务组件
|
|
-dontwarn com.ruansee.macall.unifyservemodulesdk.**
|
|
-keep class com.ruansee.macall.unifyservemodulesdk.** { *; }
|
|
|
|
#基类
|
|
-dontwarn com.rs.macall.androidx.basemodel.**
|
|
-keep class com.rs.macall.androidx.basemodel.** { *; }
|
|
|
|
#Base64编码
|
|
-dontwarn com.base.code.binary.**
|
|
-keep class com.base.code.binary.** { *; }
|
|
|
|
#加载动画
|
|
-dontwarn com.wang.avi.**
|
|
-keep class com.wang.avi.** { *; }
|
|
|
|
#广告ID
|
|
-dontwarn com.github.gzuliyujiang.oaid.**
|
|
-keep class com.github.gzuliyujiang.oaid.** { *; }
|
|
-dontwarn repeackage.com.**
|
|
-keep class repeackage.com.** { *; }
|
|
|
|
-keep public class * extends androidx.fragment.app.FragmentActivity
|
|
-keep public class * extends android.app.Application
|
|
-keep public class * extends androidx.core.content.FileProvider
|
|
-keep public class * extends android.app.Service
|
|
-keep public class * extends android.app.Activity
|
|
-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 * extends android.view.View
|
|
-keep class android.support.** {*;}
|
|
|
|
-dontwarn java.util.concurrent.Flow*
|
|
|
|
-keep public class com.ycgis.macall.personalcenter.p.app.CrashHandler{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.app.RuanseeApplication{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.app.MyAppGlideModule{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.app.UserData{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.app.AppCache{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.callback.BaseRequestCallback{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.callback.RequestCallback{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.callback.WebActivityCallback{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.presenter.**{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.interceptors.HttpLoggingInterceptor{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.ApiModel{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.HttpErrorHandler{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.RetrofitApi{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.RetrofitService{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.p.request.UploadProgressResponsBody{*;}
|
|
|
|
-keep public class com.ycgis.macall.personalcenter.m.adapterbean.**{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.m.datamodel.**{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.m.event.MessageEvent{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.m.enumbean.**{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.m.provider.**{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.m.requestbean.**{*;}
|
|
|
|
-keep public class com.ycgis.macall.personalcenter.v.activity.**{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.v.adapter.**{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.v.fragment.**{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.v.custom.**{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.v.photoview.**{*;}
|
|
|
|
-keep public class com.ycgis.macall.personalcenter.util.ReadDeviceInfo{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.AhdsAddressUtils{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.FileUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.IdcardUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.BluetoothManage{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.JiaMi{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.ImageOptimizationUtil{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.IPAddressUtils{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.LocationGPSManage{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.InsertAppUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.NotificationUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.ToThirdPartyAppUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.UriUtils{
|
|
public *;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.PhoneValidateUtils{*;}
|
|
-keep public class com.ycgis.macall.personalcenter.util.ParamMap{*;}
|
|
|
|
-keep public class com.ycgis.zpSDK.*{*;}
|
|
|
|
#-keep public class com.ycgis.macall.personalcenter.v.**{
|
|
# public *;
|
|
#}
|
|
|
|
-keepclassmembers class com.ycgis.macall.personalcenter.v.activity.OpenAppActivity$AndroidMethodInterface{ *; }
|
|
|
|
-keepclassmembers class * extends androidx.fragment.app.FragmentActivity{
|
|
public void *(android.view.View);
|
|
}
|
|
|
|
-keepclassmembers enum * { *; }
|
|
|
|
-keep public class * extends android.view.View{
|
|
*** get*();
|
|
void set*(***);
|
|
public <init>(android.content.Context);
|
|
public <init>(android.content.Context, android.util.AttributeSet);
|
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
|
}
|
|
-keepclasseswithmembers class * {
|
|
public <init>(android.content.Context, android.util.AttributeSet);
|
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
|
}
|
|
-keep class **.R$* {
|
|
*;
|
|
}
|
|
|
|
-keepclassmembers class * {
|
|
void *(**On*Event);
|
|
}
|
|
|
|
#OkHttp
|
|
-dontwarn okhttp3.**
|
|
-keep class okhttp3.**{*;}
|
|
-keep interface okhttp3.**{*;}
|
|
|
|
#gson
|
|
-dontwarn com.google.gson.**
|
|
-keep class com.google.gson.** { *;}
|
|
|
|
#fastjson
|
|
#-keep class com.alibaba.fastjson.** { *; }
|
|
#-keep class com.alibaba.fastjson.support.** { *; }
|
|
|
|
#EVENT
|
|
-keep class org.greenrobot.eventbus.** { *; }
|
|
|
|
#luban压缩
|
|
-keep class top.zibin.luban.**{*;}
|
|
|
|
#RxJava
|
|
-dontwarn sun.misc.**
|
|
-keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
|
|
long producerIndex;
|
|
long consumerIndex;
|
|
}
|
|
|
|
-dontwarn io.reactivex.android.**
|
|
-keepclassmembers class io.reactivex.internal.util.unsafe.*ArrayQueue*Field* {
|
|
long producerIndex;
|
|
long consumerIndex;
|
|
}
|
|
|
|
-dontwarn java.lang.invoke.*
|
|
|
|
#retrofit
|
|
-dontwarn retrofit2.**
|
|
-keep class retrofit2.** { *; }
|
|
-keepattributes Signature
|
|
-keepattributes Exceptions
|
|
|
|
-dontwarn com.squareup.**
|
|
-dontwarn okio.**
|
|
-keep public class org.codehaus.* { *; }
|
|
-keep public class java.nio.* { *; }
|
|
|
|
-dontwarn butterknife.internal.**
|
|
-keep class **$$ViewInjector { *; }
|
|
|
|
|
|
#Glide
|
|
-keep public class * implements com.bumptech.glide.module.GlideModule
|
|
-keep public class * implements com.bumptech.glide.module.AppGlideModule
|
|
-keep public class * implements com.bumptech.glide.load.ImageHeaderParser
|
|
-keep public enum com.bumptech.glide.load.ImageHeaderParser$*{
|
|
**[] $VALUES;
|
|
public *;
|
|
}
|
|
|
|
|
|
-dontwarn com.bumptech.glide.load.resource.bitmap.VideoDecoder
|
|
-dontwarn me.iwf.photopicker.adapter.**
|
|
|
|
-keep public class cn.jzvd.JZMediaSystem {*; }
|
|
|
|
-keep class tv.danmaku.ijk.media.player.** {*; }
|
|
-dontwarn tv.danmaku.ijk.media.player.*
|
|
-keep interface tv.danmaku.ijk.media.player.** { *; }
|
|
|
|
#Agentweb
|
|
-keep class com.just.agentweb.** {*;}
|
|
-keep class com.download.** {*;}
|
|
-dontwarn com.just.agentweb.**
|
|
|
|
-keepclassmembers class **.R$* {
|
|
public static <fields>;
|
|
public static final int *;
|
|
}
|
|
-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 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*(...);
|
|
}
|
|
-keepclassmembers public class * extends android.view.View {
|
|
void set*(***);
|
|
*** get*();
|
|
}
|
|
|
|
#Rxjava RxAndroid
|
|
-dontwarn rx.*
|
|
-dontwarn sun.misc.**
|
|
-keepclassmembers class rx.internal.util.unsafe.*ArrayQuene*Field*{
|
|
long producerIndex;
|
|
long consumerIndex;
|
|
}
|
|
|
|
|
|
|
|
#忽略警告
|
|
-ignorewarnings
|
|
-keep class javax.ws.rs.** { *; }
|
|
-dontwarn com.alibaba.fastjson.**
|
|
-keep class com.alibaba.fastjson.** { *; }
|
|
|
|
#apk 包内所有 class 的内部结构
|
|
#-dump class_files.txt
|
|
#未混淆的类和成员
|
|
#-printseeds seeds.txt
|
|
#列出从 apk 中删除的代码
|
|
#-printusage unused.txt
|
|
#混淆前后的映射
|
|
#-printmapping mapping.txt
|
|
|
|
#fastjson 可以混淆也可以不混淆
|
|
#-keep class javax.ws.rs.** { *; }
|
|
#-dontwarn com.alibaba.fastjson.**
|
|
#-keep class com.alibaba.fastjson.** { *; }
|
|
-keepclassmembers class * implements java.io.Serializable {
|
|
static final long serialVersionUID;
|
|
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
|
private void writeObject(java.io.ObjectOutputStream);
|
|
private void readObject(java.io.ObjectInputStream);
|
|
java.lang.Object writeReplace();
|
|
java.lang.Object readResolve();
|
|
public <fields>;
|
|
}
|
|
-keepattributes Signature
|
|
|
|
|
|
#蓝牙打印机的配置
|
|
-keep public class com.gengcon.www.jcprintersdk.**{*;}
|
|
-keep public class com.niimbot.canvas.image.**{*; }
|
|
-keep public class com.dothantech.**{*;}
|
|
-keep public class zpSDK.zpSDK.**{*;}
|
|
-keep public class com.snbc.sdk.**{*;}
|
|
-keep public class android_serialport_api.**{*;}
|
|
-dontwarn com.gengcon.www.jcprintersdk.**
|
|
-dontwarn com.jingchen.jcimagesdk.**
|
|
-dontwarn com.niimbot.canvas.image.**
|
|
-dontwarn com.dothantech.**
|
|
-dontwarn zpSDK.zpSDK.**
|
|
-dontwarn com.snbc.sdk.**
|
|
-dontwarn android_serialport_api.**
|
|
|