Only just working proguard rules for release build

This commit is contained in:
Yuri Schimke 2021-10-29 18:49:58 +03:00
parent 23d9cbc382
commit 373169293d
2 changed files with 57 additions and 15 deletions

View file

@ -27,8 +27,11 @@ android {
buildTypes {
release {
isMinifyEnabled = false
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
// temporary hack for local testing of release builds
signingConfig = signingConfigs.getByName("debug")
}
}

View file

@ -1,21 +1,60 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
# By default, the flags in this file are appended to flags specified
# in /Users/jooreill/devtools/adt/sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.kts.kts.kts.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Add any project specific keep options here:
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# keep everything in this package from being removed or renamed
-keep class com.surrus.** { *; }
-keep class androidx.wear.** { *; }
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
# okhttp
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
-dontwarn okhttp3.**
-dontwarn okio.**
-dontwarn com.squareup.okhttp.**
-dontnote android.net.http.*
-dontnote org.apache.commons.codec.**
-dontnote org.apache.http.**
-keep,allowoptimization class com.google.android.libraries.maps.** { *; }
-keep,allowoptimization class com.google.android.apps.gmm.renderer.** { *; }
-keepnames class * implements android.os.Parcelable
-keepclassmembers class * implements android.os.Parcelable {
public static final *** CREATOR;
}
-dontwarn android.security.NetworkSecurityPolicy
-keep class com.google.android.gms.** { *; }
-dontwarn com.google.android.gms.**
-dontwarn android.content.**
-keep class android.content.**
-keep class android.support.** { *; }
-keep interface android.support.** { *; }
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
# Firebase Authentication
-keepattributes Signature
-keepattributes *Annotation*
#Kotlin
-dontwarn kotlin.**
-dontwarn org.jetbrains.annotations.NotNull