-
-
Save devapro/8fc0f984f6f5db4dfd566e6965b50d06 to your computer and use it in GitHub Desktop.
Healthy person's ProGuard rules for Android and Kotlin.
This file contains hidden or 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
| # shrink libraries (this in enabled by default since v. 4.5) | |
| -dontskipnonpubliclibraryclasses | |
| # preverify is useful only for J2ME | |
| -dontpreverify | |
| -optimizationpasses 5 | |
| # this seems to be enough | |
| -overloadaggressively | |
| # deal with it! | |
| # remove indirection | |
| -allowaccessmodification | |
| # move everything into the root package | |
| -repackageclasses "" | |
| # remove source file names | |
| -renamesourcefileattribute "" | |
| # remove runtime assertions, they are enforced in compile-time by Kotlin compiler | |
| -assumenosideeffects class kotlin.jvm.internal.Intrinsics { | |
| public static void checkExpressionValueIsNotNull(java.lang.Object, java.lang.String); | |
| public static void checkFieldIsNotNull(java.lang.Object, java.lang.String); | |
| public static void checkFieldIsNotNull(java.lang.Object, java.lang.String, java.lang.String); | |
| public static void checkNotNull(java.lang.Object); | |
| public static void checkNotNull(java.lang.Object, java.lang.String); | |
| public static void checkNotNullExpressionValue(java.lang.Object, java.lang.String); | |
| public static void checkNotNullParameter(java.lang.Object, java.lang.String); | |
| public static void checkParameterIsNotNull(java.lang.Object, java.lang.String); | |
| public static void checkReturnedValueIsNotNull(java.lang.Object, java.lang.String); | |
| public static void checkReturnedValueIsNotNull(java.lang.Object, java.lang.String, java.lang.String); | |
| } | |
| # keep Parcelable Creators due to crappy interface design | |
| -keepclassmembers class * implements android.os.Parcelable { | |
| public static final android.os.Parcelable$Creator CREATOR; | |
| } | |
| # suppress warnings | |
| -dontwarn android.support.** |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment