proguard-rules.pro 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. # Add project specific ProGuard rules here.
  2. # You can control the set of applied configuration files using the
  3. # proguardFiles setting in build.gradle.
  4. #
  5. # For more details, see
  6. # http://developer.android.com/guide/developing/tools/proguard.html
  7. # If your project uses WebView with JS, uncomment the following
  8. # and specify the fully qualified class name to the JavaScript interface
  9. # class:
  10. #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
  11. # public *;
  12. #}
  13. # Uncomment this to preserve the line number information for
  14. # debugging stack traces.
  15. #-keepattributes SourceFile,LineNumberTable
  16. # If you keep the line number information, uncomment this to
  17. # hide the original source file name.
  18. #-renamesourcefileattribute SourceFile
  19. ## pangle 穿山甲原有的
  20. -keepclassmembers class * {
  21. *** getContext(...);
  22. *** getActivity(...);
  23. *** getResources(...);
  24. *** startActivity(...);
  25. *** startActivityForResult(...);
  26. *** registerReceiver(...);
  27. *** unregisterReceiver(...);
  28. *** query(...);
  29. *** getType(...);
  30. *** insert(...);
  31. *** delete(...);
  32. *** update(...);
  33. *** call(...);
  34. *** setResult(...);
  35. *** startService(...);
  36. *** stopService(...);
  37. *** bindService(...);
  38. *** unbindService(...);
  39. *** requestPermissions(...);
  40. *** getIdentifier(...);
  41. }
  42. -keep class com.bytedance.pangle.** {*;}
  43. -keep class com.bytedance.sdk.openadsdk.** { *; }
  44. -keep class com.bytedance.frameworks.** { *; }
  45. -keep class ms.bd.c.Pgl.**{*;}
  46. -keep class com.bytedance.mobsec.metasec.ml.**{*;}
  47. -keep class com.ss.android.**{*;}
  48. -keep class com.bytedance.embedapplog.** {*;}
  49. -keep class com.bytedance.embed_dr.** {*;}
  50. -keep class com.bykv.vk.** {*;}
  51. //聚合混淆
  52. -keep class bykvm*.**
  53. -keep class com.bytedance.msdk.adapter.**{ public *; }
  54. -keep class com.bytedance.msdk.api.** {
  55. public *;
  56. }
  57. -keep class com.bytedance.msdk.base.TTBaseAd{*;}
  58. -keep class com.bytedance.msdk.adapter.TTAbsAdLoaderAdapter{
  59. public *;
  60. protected <fields>;
  61. }
  62. # baidu sdk 不接入baidu sdk可以不引入
  63. -ignorewarnings
  64. -dontwarn com.baidu.mobads.sdk.api.**
  65. -keepclassmembers class * extends android.app.Activity {
  66. public void *(android.view.View);
  67. }
  68. -keepclassmembers enum * {
  69. public static **[] values();
  70. public static ** valueOf(java.lang.String);
  71. }
  72. -keep class com.baidu.mobads.** { *; }
  73. -keep class com.style.widget.** {*;}
  74. -keep class com.component.** {*;}
  75. -keep class com.baidu.ad.magic.flute.** {*;}
  76. -keep class com.baidu.mobstat.forbes.** {*;}
  77. # Admob 不接入admob sdk可以不引入
  78. -keep class com.google.android.gms.ads.MobileAds {
  79. public *;
  80. }
  81. #sigmob 不接入sigmob sdk可以不引入
  82. -dontwarn android.support.v4.**
  83. -keep class android.support.v4.** { *; }
  84. -keep interface android.support.v4.** { *; }
  85. -keep public class * extends android.support.v4.**
  86. -keep class sun.misc.Unsafe { *; }
  87. -dontwarn com.sigmob.**
  88. -keep class com.sigmob.**.**{*;}
  89. #oaid 不同的版本混淆代码不太一致,你注意你接入的oaid版本 ,不接入oaid可以不添加
  90. -dontwarn com.bun.**
  91. -keep class com.bun.** {*;}
  92. -keep class a.**{*;}
  93. -keep class XI.CA.XI.**{*;}
  94. -keep class XI.K0.XI.**{*;}
  95. -keep class XI.XI.K0.**{*;}
  96. -keep class XI.vs.K0.**{*;}
  97. -keep class XI.xo.XI.XI.**{*;}
  98. -keep class com.asus.msa.SupplementaryDID.**{*;}
  99. -keep class com.asus.msa.sdid.**{*;}
  100. -keep class com.huawei.hms.ads.identifier.**{*;}
  101. -keep class com.samsung.android.deviceidservice.**{*;}
  102. -keep class com.zui.opendeviceidlibrary.**{*;}
  103. -keep class org.json.**{*;}
  104. -keep public class com.netease.nis.sdkwrapper.Utils {public <methods>;}
  105. #klevin 游可赢
  106. -keep class com.tencent.tgpa.**{*;}
  107. -keep class com.tencent.klevin.**{*;}
  108. #Mintegral 不接入Mintegral sdk,可以不引入
  109. -keepattributes Signature
  110. -keepattributes *Annotation*
  111. -keep class com.mbridge.** {*; }
  112. -keep interface com.mbridge.** {*; }
  113. -keep class android.support.v4.** { *; }
  114. -dontwarn com.mbridge.**
  115. -keep class **.R$* { public static final int mbridge*; }
  116. 注意: SDK代码被混淆后会导致广告无法展现或者其它异常。
  117. 注意: SDK中使用的so文件支持1种架构:armeabi-v7a 如果您应用中支持的架构超出这
  118. 1种,请在build.gradle中使用abiFilters选择支持的架构(需要注意ADN支持的架构有几种)。如下所示:
  119. ndk {
  120. // 设置支持的 SO 库构架,注意这里要根据你的实际情况来设置
  121. abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'armeabi'
  122. }
  123. packagingOptions {
  124. doNotStrip "*/armeabi-v7a/*.so"
  125. doNotStrip "*/x86/*.so"
  126. doNotStrip "*/arm64-v8a/*.so"
  127. doNotStrip "*/x86_64/*.so"
  128. doNotStrip "armeabi.so"
  129. }