Created
July 25, 2017 09:17
-
-
Save brownsoo/9b11a823360c9cf184263df3e669375c to your computer and use it in GitHub Desktop.
Proguard setting for Android Architecture Components
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Android architecture components: Lifecycle | |
# LifecycleObserver's empty constructor is considered to be unused by proguard | |
-keepclassmembers class * implements android.arch.lifecycle.LifecycleObserver { | |
<init>(...); | |
} | |
# ViewModel's empty constructor is considered to be unused by proguard | |
-keepclassmembers class * extends android.arch.lifecycle.ViewModel { | |
<init>(...); | |
} | |
# keep Lifecycle State and Event enums values | |
-keepclassmembers class android.arch.lifecycle.Lifecycle$State { *; } | |
-keepclassmembers class android.arch.lifecycle.Lifecycle$Event { *; } | |
# keep methods annotated with @OnLifecycleEvent even if they seem to be unused | |
# (Mostly for LiveData.LifecycleBoundObserver.onStateChange(), but who knows) | |
-keepclassmembers class * { | |
@android.arch.lifecycle.OnLifecycleEvent *; | |
} | |
-keepclassmembers class * implements android.arch.lifecycle.LifecycleObserver { | |
<init>(...); | |
} | |
-keep class * implements android.arch.lifecycle.LifecycleObserver { | |
<init>(...); | |
} | |
-keepclassmembers class android.arch.** { *; } | |
-keep class android.arch.** { *; } | |
-dontwarn android.arch.** |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Also please add this one:
-keep class * implements android.arch.lifecycle.GeneratedAdapter {<init>(...);}