proguard-rules.pro
7.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
# 微信SDK混淆规则
-keep class com.tencent.mm.opensdk.** {
*;
}
-keep class com.tencent.wxop.** {
*;
}
-keep class com.tencent.mm.sdk.** {
*;
}
# ffmpegkit
-keep class com.antonkarpenko.**{
*;
}
# tencent push
-keep class com.tencent.qcloud.** {
*;
}
-keep class com.tencent.timpush.** {
*;
}
# 可选:如果遇到兼容性问题,可以忽略警告
-dontwarn com.tencent.mm.**
# 亿帆广告
-keepattributes Signature
# For using GSON @Expose annotation
-keepattributes *Annotation*
# Gson specific classes
-dontwarn sun.misc.**
#-keep class com.google.gson.stream.** { *; }
# Application classes that will be serialized/deserialized over Gson
-keep class com.google.gson.examples.android.model.** { <fields>; }
# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * extends com.google.gson.TypeAdapter
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer
# Prevent R8 from leaving Data object members always null
-keepclassmembers,allowobfuscation class * {
@com.google.gson.annotations.SerializedName <fields>;
}
# Retain generic signatures of TypeToken and its subclasses with R8 version 3.0 and higher.
-keep,allowobfuscation,allowshrinking class com.google.gson.reflect.TypeToken
-keep,allowobfuscation,allowshrinking class * extends com.google.gson.reflect.TypeToken
##---------------End: proguard configuration for Gson ----------
## ------聚合开始
-keep class com.yfanads.android.** { *; }
-keep class com.yfanads.ads.** { *; }
## ------聚合结束
# -------三方依赖开始
-keep class com.google.** { *; }
-dontwarn okio.**
-dontwarn com.ak.**
-dontwarn android.webkit.**
-dontwarn com.bytedance.sdk.**
-keep class android.** { *; }
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
**[] $VALUES;
public *;
}
# -------三方依赖结束
# csj sdk start
#3500以及以下版本混淆规则如下:
-keep class com.bytedance.sdk.openadsdk.** { *; }
-keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;}
-keep class com.pgl.sys.ces.* {*;}
-keep class com.bytedance.embed_dr.** {*;}
-keep class com.bytedance.embedapplog.** {*;}
#3600版本-3800版本混淆规则如下:
-keep class com.bytedance.sdk.openadsdk.** { *; }
-keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;}
-keep class ms.bd.c.**{*;}
-keep class com.bytedance.mobsec.**{*;}
-keep class com.bytedance.embed_dr.** {*;}
-keep class com.bytedance.embedapplog.** {*;}
-keep interface com.bytedance.frameworks.baselib.network.http.cronet.I* {*;}
-keepnames class com.bytedance.framwork.core.sdkmonitor.SDKMonitorUtils
#3900版本及以上版本混淆规则如下:
-keep class com.bytedance.sdk.openadsdk.** { *; }
-keep class com.bytedance.frameworks.** { *; }
-keep class ms.bd.c.Pgl.**{*;}
-keep class com.bytedance.mobsec.metasec.ml.**{*;}
-keep class com.ss.android.**{*;}
-keep class com.bytedance.embedapplog.** {*;}
-keep class com.bytedance.embed_dr.** {*;}
-keep class com.bykv.vk.** {*;}
-keep class bykvm*.**
-keep class com.bytedance.msdk.adapter.**{ public *; }
-keep class com.bytedance.msdk.api.** {
public *;
}
-keep class com.bytedance.msdk.base.TTBaseAd{*;}
-keep class com.bytedance.msdk.adapter.TTAbsAdLoaderAdapter{
public *;
protected <fields>;
}
# csj sdk end
#baidu start
-keep class com.baidu.mobads.** { *; }
# ks SDK
-keep class org.chromium.** {*;}
-keep class org.chromium.** { *; }
-keep class aegon.chrome.** { *; }
-keep class com.kwai.**{ *; }
-dontwarn com.kwai.**
-dontwarn com.kwad.**
-dontwarn com.ksad.**
-dontwarn aegon.chrome.**
# GDT sdk start
-dontwarn com.qq.e.**
-keep class com.qq.e.** {*;}
-dontpreverify
# JD SDK
-keep class com.jd.ad.sdk.** { *; }
# Xm SDK
-keep class com.miui.zeus.** { *; }
# Oppo SDK
-keep class com.opos.** { *;}
-keep class com.heytap.msp.mobad.** { *;}
-keep class com.heytap.openid.** {*;}
-keep class okio.**{ *; }
-keeppackagenames com.heytap.nearx.tapplugin
# HuaWei SDK
-keep class com.huawei.openalliance.ad.** { *; }
-keep class com.huawei.hms.ads.** { *; }
# Vivo SDK
-dontwarn okhttp3.**
-dontwarn android.support.v4.**
-dontwarn com.squareup.okhttp.**
-keep class com.vivo.*.** { *; }
-dontwarn com.bytedance.article.common.nativecrash.NativeCrashInit
-keep class com.bytedance.sdk.openadsdk.** {*;}
-keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;}
-keep class com.pgl.sys.ces.* {*;}
-keep class com.qq.e.** {
public protected *;
}
-keep class android.support.v4.**{
public *;
}
-dontwarn com.vivo.secboxsdk.**
-keep class com.vivo.secboxsdk.SecBoxCipherException { *; }
-keep class com.vivo.secboxsdk.jni.SecBoxNative { *; }
-keep class com.vivo.secboxsdk.BuildConfig { *; }
-keep class android.support.v7.widget.** {*;}
# TanX
##优化配置,可进行字段优化、内联、类合并、代码简化、算法指令精简等操作。
-optimizations code/removal/simple,code/removal/advanced,method/removal/parameter,method/inlining/short,method/inlining/tailrecursion
##执行优化的次数,默认1次,多次能达到更好的优化效果。
-optimizationpasses 5
# 混合时不使用大小写混合,混合后的类名为小写
-dontusemixedcaseclassnames
#保持参数名 指定keep已经被keep的方法的参数类型和参数名称,在混淆library库时非常有用,可供IDE帮助用户进行信息提示和代码自动填充。
-keepparameternames
#指定保留属性,多个属性可以用多个-keepattributes配置,也可以用逗号分隔,可以使用? * **通配符,并且可以使用否定符(!)。
#比如,在混淆ibrary库时,应该至少keep Exceptions, InnerClasses, Signature;如果在追踪代码,还需要keep符号表;使用到注解时也需要keep。
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
#优化时允许访问并修改有修饰符的类和类的成员, 混淆后的类名还会改变地方,到其他包中 需要,所有被混淆的都到一个包去,不需要保留原来的结构
-allowaccessmodification
#混淆前后类、方法、类成员等的对照
-printmapping mapping.txt
##屏蔽警告
-ignorewarnings
#指定在混淆过程中输出更多信息,配置这个选项后,在遇到异常时,将输出完整的堆栈,而不仅仅是异常消息
-verbose
# 指定不去忽略非公共的库类(不跳过library中的非public的类)
-dontskipnonpubliclibraryclasses
#指定不去忽略非公共库的类成员
-dontskipnonpubliclibraryclassmembers
-dontwarn com.alibaba.fastjson.**
-keep class com.alibaba.fastjson.**{*;}
-keep class com.bumptech.glide.**{*;}
-keep class com.alimm.tanx.**{*;}
# 自动曝光数据的防混淆
-keep class * implements java.io.Serializable{
<fields>;
<methods>;
}
#荣耀 start
-keep class com.hihonor.adsdk.** {*;}
-keep,allowshrinking class com.hihonor.adsdk.base.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.banner.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.intersititial.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.reward.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.picturetextad.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.splash.**{*;}
-keep,allowshrinking class com.hihonor.adsdk.common.**{*;}
-keep,allowshrinking class com.hihonor.hianalytics.**{*;}
-keep,allowshrinking class com.hihonor.updater.**{*;}
-keep,allowshrinking class com.hihonor.secure.android.common.encrypt.**{*;}
-keep,allowshrinking class com.hihonor.secure.android.common.ssl.**{*;}
-keep,allowshrinking class com.hihonor.ads.identifier.**{*;}
-keep,allowshrinking class com.hihonor.dlinstall.**{*;}
-keep class com.squareup.wire.** { *; }
-keep class com.opensource.svgaplayer.proto.** { *; }