proguard-rules.pro 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. -keep public class * implements com.bumptech.glide.module.GlideModule
  20. -keep public class * extends com.bumptech.glide.module.AppGlideModule
  21. -keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
  22. **[] $VALUES;
  23. public *;
  24. }
  25. -keep class cn.tillusory.**{*;}
  26. -keep class com.hwangjr.rxbus.**{*;}
  27. -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
  28. long producerIndex;
  29. long consumerIndex;
  30. }
  31. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
  32. rx.internal.util.atomic.LinkedQueueNode producerNode;
  33. }
  34. -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
  35. rx.internal.util.atomic.LinkedQueueNode consumerNode;
  36. }
  37. ##---------------Begin: proguard configuration for Gson ----------
  38. # Gson uses generic type information stored in a class file when working with fields. Proguard
  39. # removes such information by default, so configure it to keep all of it.
  40. -keepattributes Signature
  41. # For using GSON @Expose annotation
  42. -keepattributes *Annotation*
  43. # Gson specific classes
  44. -dontwarn sun.misc.**
  45. #-keep class com.google.gson.stream.** { *; }
  46. # Application classes that will be serialized/deserialized over Gson
  47. -keep class com.google.gson.examples.android.model.** { *; }
  48. # Prevent proguard from stripping interface information from TypeAdapterFactory,
  49. # JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
  50. -keep class * implements com.google.gson.TypeAdapterFactory
  51. -keep class * implements com.google.gson.JsonSerializer
  52. -keep class * implements com.google.gson.JsonDeserializer
  53. ##---------------End: proguard configuration for Gson ----------