# Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in /home/gleb/android-sdk-linux/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the proguardFiles # directive in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class permission to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} # Uncomment this to preserve the line number information for # debugging stack traces. #-keepattributes SourceFile,LineNumberTable # If you keep the line number information, uncomment this to # hide the original source file permission. #-renamesourcefileattribute SourceFile #-dontobfuscate #-dontoptimize #-dontshrink -android -optimizationpasses 5 -allowaccessmodification -dontpreverify -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers #-optimizations !code/simplification/arithmetic #-optimizations !code/simplification/cast -optimizations !code/allocation/variable #-optimizations !field -keepparameternames #-renamesourcefileattribute SourceFile -keepattributes *Annotation*, Signature -keepattributes EnclosingMethod #-keepattributes LineNumberTable, SourceFile -keepattributes InnerClasses, Exceptions # # Common Android Settings # -keepclasseswithmembernames class * {native ;} -keepclasseswithmembers class * {native ;} -keepclassmembers class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator CREATOR; } -keepnames class * implements android.os.Parcelable {*** CREATOR;} -keep class * implements android.os.Parcelable {static final android.os.Parcelable$Creator *;} -keepnames class * implements java.io.Serializable -keepclassmembers class * implements java.io.Serializable { static final long serialVersionUID; private static final java.io.ObjectStreamField[] serialPersistentFields; !static !transient ; private void writeObject(java.io.ObjectOutputStream); private void readObject(java.io.ObjectInputStream); java.lang.Object writeReplace(); java.lang.Object readResolve(); } # # Android bug. https://code.google.com/p/android/issues/detail?id=194513 # -dontnote android.net.http.SslError -dontnote android.net.http.SslCertificate -dontnote android.net.http.SslCertificate$DName -dontnote android.net.http.HttpResponseCache -dontnote org.apache.http.conn.scheme.HostNameResolver -dontnote org.apache.http.conn.scheme.SocketFactory -dontnote org.apache.http.conn.ConnectTimeoutException -dontnote org.apache.http.params.HttpParams -dontnote org.apache.http.params.CoreConnectionPNames -dontnote org.apache.http.params.HttpConnectionParams -dontnote org.apache.http.conn.scheme.LayeredSocketFactory -dontnote android.content.pm.ParceledListSlice -dontnote libcore.icu.ICU -dontnote android.content.res.ThemedResourceCache -dontnote android.graphics.Insets -dontnote android.support.v7.widget.ViewUtils -dontnote android.support.v4.text.ICUCompatApi23 -dontnote android.support.v4.text.ICUCompatApi21 -dontnote android.support.v4.text.ICUCompatIcs -dontnote android.support.v4.graphics.TypefaceCompatApi24Impl -dontnote android.support.v4.graphics.TypefaceCompatApi26Impl -dontnote android.support.graphics.drawable.VectorDrawableCompat$VPath -dontnote android.support.transition.ViewGroupUtilsApi14 -dontnote android.support.v4.** -dontnote android.support.v7.** -dontnote android.support.transition.GhostViewApi21 -dontnote android.support.v8.renderscript.RenderScript -dontnote com.android.vending.billing.IInAppBillingService -keep class android.support.v4.media.VolumeProviderCompatApi21 -keep class android.support.v4.app.FragmentTransitionCompat21 -keep class android.support.v4.view.accessibility.AccessibilityNodeProviderCompatJellyBean -keep class android.support.v4.view.accessibility.AccessibilityNodeProviderCompatKitKat -keep class android.support.transition.ViewGroupUtilsApi14 {*;} -keep class android.support.multidex.** {*;} -keep public class android.support.v7.widget.AppCompatBackgroundHelper {*;} -keep public class android.support.v7.widget.AppCompatImageHelper {*;} -keep public class android.support.v7.widget.Toolbar {*;} -keep public class android.support.v7.widget.AppCompatImageView {*;} -keep public class android.support.v7.widget.AppCompatImageButton {*;} -keep public class android.support.v7.widget.AppCompatTextView {*;} -keep public class android.support.v7.widget.AppCompatButton {*;} -keep public class android.support.v7.widget.AppCompatCheckBox {*;} -keep class android.support.v7.app.AppCompatViewInflater {*;} -keep class android.support.v7.app.AppCompatDelegateImplV9 {*;} -keep class android.support.v7.app.AppCompatDelegateImplV9$2 {*;} -keep class android.support.v4.view.ViewCompat$ViewCompatApi21Impl$1 {*;} -keep class android.support.v4.view.ViewGroupCompat {*;} -keep public class android.support.v4.view.WindowInsetsCompat {*;} #-keep public class android.view.WindowInsets {*;} #-keep class android.support.** {*;} #-keep class android.support.graphics.drawable.PathParser$PathDataNode {*;} #-keep class android.support.** {*;} #-keep class android.support.v4.** {*;} -keep class org.junit.** {*;} #-keep class com.android.support.test.** {*;} -keep class com.facebook.appevents.** {*;} -keep class com.facebook.internal.** {*;} -dontnote junit.framework.TestListener -dontnote junit.framework.AssertionFailedError -dontnote junit.framework.TestFailure -dontnote junit.framework.TestResult -dontnote junit.framework.TestCase -dontnote junit.framework.Protectable -dontnote junit.framework.TestSuite -dontnote junit.framework.Assert -dontnote junit.framework.Test -dontnote junit.framework.ComparisonFailure -dontnote junit.runner.BaseTestRunner -dontnote junit.runner.Version -dontnote com.facebook.** -dontnote bolts.** -keep class java.io.FileDescriptor {*;} -keep class android.os.ParcelFileDescriptor {*;} -dontnote java.io.FileDescriptor -dontnote android.os.ParcelFileDescriptor -dontnote com.google.android.gms.common.internal.safeparcel.SafeParcelable -keep public class mul.** {*;} -dontnote com.bumptech.glide.Glide -keep class com.bumptech.glide.** {*;} -keep enum com.bumptech.glide.** {*;} -dontnote com.voir.android.contracts.** -dontnote java.lang.invoke.* -dontwarn dagger.android.* -dontwarn arch.Presenter$OwnerCallbacks -dontnote com.google.common.util.concurrent.MoreExecutors -dontnote com.google.common.base.Throwables -dontnote com.google.common.base.internal.Finalizer #-dontwarn com.google.common.base.** #-keep class com.google.common.base.** {*;} -dontwarn com.google.errorprone.annotations.** #-keep class com.google.errorprone.annotations.** {*;} -dontwarn com.google.j2objc.annotations.** #-keep class com.google.j2objc.annotations.** { *; } #-dontwarn java.lang.ClassValue #-keep class java.lang.ClassValue { *; } -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement #-keep class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement { *; } #-dontwarn sun.misc.Unsafe #-dontwarn com.google.common.collect.MinMaxPriorityQueue -dontwarn org.checkerframework.checker.nullness.compatqual.NullableDecl -dontwarn org.checkerframework.checker.nullness.compatqual.MonotonicNonNullDecl #-keepclasseswithmembers public class * { # public static void main(java.lang.String[]); #}