diff --git a/app/build.gradle b/app/build.gradle index f17af4b49..60210fd6c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -78,7 +78,7 @@ android { // in automation for UI testing non-debug builds. shrinkResources !project.hasProperty("disableOptimization") minifyEnabled !project.hasProperty("disableOptimization") - proguardFiles 'proguard-android-optimize-3.5.0-modified.txt', 'proguard-rules.pro' + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' matchingFallbacks = ['release'] // Use on the "release" build type in dependencies (AARs) if (gradle.hasProperty("localProperties.autosignReleaseWithDebugKey")) { diff --git a/app/proguard-android-optimize-3.5.0-modified.txt b/app/proguard-android-optimize-3.5.0-modified.txt deleted file mode 100644 index 0a64ad38a..000000000 --- a/app/proguard-android-optimize-3.5.0-modified.txt +++ /dev/null @@ -1,120 +0,0 @@ -#################################################################################################### -# Copy of `proguard-android-optimize.txt`. -# We need to _remove_ some of the configuration, so the only way to achieve that is to dump it here -# and modify it. -#################################################################################################### - -# This is a configuration file for ProGuard. -# http://proguard.sourceforge.net/index.html#manual/usage.html -# -# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with -# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and -# will be ignored by new version of the Android plugin for Gradle. - -# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file -# instead of this one, which turns off the optimization flags. -# Adding optimization introduces certain risks, since for example not all optimizations performed by -# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations -# known to have issues, but the list may not be complete or up to date. (The "arithmetic" -# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test -# thoroughly if you go this route. --optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* --optimizationpasses 5 - --dontusemixedcaseclassnames --dontskipnonpubliclibraryclasses --verbose - -# Preserve some attributes that may be required for reflection. --keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod - --keep public class com.google.vending.licensing.ILicensingService --keep public class com.android.vending.licensing.ILicensingService --keep public class com.google.android.vending.licensing.ILicensingService --dontnote com.android.vending.licensing.ILicensingService --dontnote com.google.vending.licensing.ILicensingService --dontnote com.google.android.vending.licensing.ILicensingService - -# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native --keepclasseswithmembernames class * { - native ; -} - -# Keep setters in Views so that animations can still work. --keepclassmembers public class * extends android.view.View { - void set*(***); - *** get*(); -} - -# We want to keep methods in Activity that could be used in the XML attribute onClick. --keepclassmembers class * extends android.app.Activity { - public void *(android.view.View); -} - -# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keepclassmembers class * implements android.os.Parcelable { - public static final ** CREATOR; -} - --keepclassmembers class **.R$* { - public static ; -} - -# Preserve annotated Javascript interface methods. --keepclassmembers class * { - @android.webkit.JavascriptInterface ; -} - -# The support libraries contains references to newer platform versions. -# Don't warn about those in case this app is linking against an older -# platform version. We know about them, and they are safe. --dontnote android.support.** --dontnote androidx.** --dontwarn android.support.** --dontwarn androidx.** - -# This class is deprecated, but remains for backward compatibility. --dontwarn android.util.FloatMath - -# Understand the @Keep support annotation. --keep class android.support.annotation.Keep --keep class androidx.annotation.Keep - --keep @android.support.annotation.Keep class * {*;} --keep @androidx.annotation.Keep class * {*;} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @androidx.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @androidx.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep (...); -} - --keepclasseswithmembers class * { - @androidx.annotation.Keep (...); -} - -# These classes are duplicated between android.jar and org.apache.http.legacy.jar. --dontnote org.apache.http.** --dontnote android.net.http.** - -# These classes are duplicated between android.jar and core-lambda-stubs.jar. --dontnote java.lang.invoke.**