proguard-rules.pro 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. -dontobfuscate
  2. # Extensions may require methods unused in the core app
  3. -dontwarn eu.kanade.tachiyomi.**
  4. -keep class eu.kanade.tachiyomi.** { public protected private *; }
  5. -keep class org.jsoup.** { *; }
  6. -keep class kotlin.** { *; }
  7. -keep class okhttp3.** { *; }
  8. -keep class com.google.gson.** { *; }
  9. -keep class com.github.salomonbrys.kotson.** { *; }
  10. -keep class com.squareup.duktape.** { *; }
  11. # Design library
  12. -dontwarn com.google.android.material.**
  13. -keep class com.google.android.material.** { *; }
  14. -keep interface com.google.android.material.** { *; }
  15. -keep public class com.google.android.material.R$* { *; }
  16. -keep class com.hippo.image.** { *; }
  17. -keep interface com.hippo.image.** { *; }
  18. -keepclassmembers class * extends nucleus.presenter.Presenter {
  19. <init>();
  20. }
  21. # OkHttp
  22. -dontwarn okhttp3.**
  23. -dontwarn okio.**
  24. -dontwarn javax.annotation.**
  25. -dontwarn retrofit2.Platform$Java8
  26. # Glide specific rules #
  27. # https://github.com/bumptech/glide
  28. -keep public class * implements com.bumptech.glide.module.GlideModule
  29. -keep public class * extends com.bumptech.glide.AppGlideModule
  30. -keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
  31. **[] $VALUES;
  32. public *;
  33. }
  34. # RxJava 1.1.0
  35. -dontwarn sun.misc.**
  36. -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
  37. long producerIndex;
  38. long consumerIndex;
  39. }
  40. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
  41. rx.internal.util.atomic.LinkedQueueNode producerNode;
  42. }
  43. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
  44. rx.internal.util.atomic.LinkedQueueNode consumerNode;
  45. }
  46. # ReactiveNetwork
  47. -dontwarn com.github.pwittchen.reactivenetwork.**
  48. ## GSON ##
  49. # Gson uses generic type information stored in a class file when working with fields. Proguard
  50. # removes such information by default, so configure it to keep all of it.
  51. -keepattributes Signature
  52. # Gson specific classes
  53. -keep class sun.misc.Unsafe { *; }
  54. # Prevent proguard from stripping interface information from TypeAdapterFactory,
  55. # JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
  56. -keep class * implements com.google.gson.TypeAdapterFactory
  57. -keep class * implements com.google.gson.JsonSerializer
  58. -keep class * implements com.google.gson.JsonDeserializer