From 309d780b079c7e5449aa999a306b4e160ee32ad7 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 17:48:18 +0300 Subject: [PATCH 1/9] Enabled Minify. --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index c7140321..e43a8bcd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -41,7 +41,7 @@ android { } getByName("release") { - isMinifyEnabled = false + isMinifyEnabled = true // Enabling minify, test of reproducibility isShrinkResources = false proguardFiles( From 2a5e0e0f4aceda8b9c73c9b0704126c99386c3f5 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 18:31:21 +0300 Subject: [PATCH 2/9] Additional rules in "proguard-rules.pro". --- app/build.gradle.kts | 1 - app/proguard-rules.pro | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e43a8bcd..fa3321ef 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -140,7 +140,6 @@ dependencies { exclude("org.slf4j") exclude("xmlpull") } - implementation("org.slf4j:slf4j-android:latest.release") implementation("org.jsoup:jsoup:latest.release") // Fb2 parser diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index b9504bba..9ed70600 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -32,6 +32,9 @@ -dontwarn javax.lang.model.util.Types -dontwarn javax.tools.Diagnostic$Kind -dontwarn org.kxml2.io.** +-dontwarn android.content.res.** +-dontwarn org.slf4j.Logger +-dontwarn org.slf4j.LoggerFactory -keep class com.mikepenz.aboutlibraries.** { *; } -keep class org.xmlpull.** { *; } From 5a8f4d6e4359a87f730a920e7b1b26893ae76cf1 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 19:03:16 +0300 Subject: [PATCH 3/9] No classes are kept (proguard-rules.pro). --- app/proguard-rules.pro | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 9ed70600..2ac75832 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -36,9 +36,5 @@ -dontwarn org.slf4j.Logger -dontwarn org.slf4j.LoggerFactory --keep class com.mikepenz.aboutlibraries.** { *; } --keep class org.xmlpull.** { *; } --keepclassmembers class org.xmlpull.** { *; } - # Debug rule #-keepnames class ** { *; } From bf890fca6231d744356f3764345a31b2a91b4f9e Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 19:24:58 +0300 Subject: [PATCH 4/9] Changed proguard-rules.pro. --- app/build.gradle.kts | 5 +---- app/proguard-rules.pro | 6 +++--- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index fa3321ef..1cfc500b 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -44,10 +44,7 @@ android { isMinifyEnabled = true // Enabling minify, test of reproducibility isShrinkResources = false - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) + proguardFiles("proguard-rules.pro") } } compileOptions { diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 2ac75832..4cec6005 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -1,5 +1,5 @@ # Proguard-rules --dontwarn org.xmlpull.v1.** +-dontwarn android.content.res.** -dontwarn com.gemalto.jp2.JP2Decoder -dontwarn com.google.auto.service.AutoService -dontwarn javax.lang.model.SourceVersion @@ -31,10 +31,10 @@ -dontwarn javax.lang.model.util.SimpleTypeVisitor8 -dontwarn javax.lang.model.util.Types -dontwarn javax.tools.Diagnostic$Kind --dontwarn org.kxml2.io.** --dontwarn android.content.res.** +-dontwarn org.kxml2.io.KXml** -dontwarn org.slf4j.Logger -dontwarn org.slf4j.LoggerFactory +-dontwarn org.xmlpull.v1.XmlPullParserFactory # Debug rule #-keepnames class ** { *; } From 8cc0bf2947351638d5a2c1f2576aa9ef7561ff11 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 20:04:46 +0300 Subject: [PATCH 5/9] Keep All class names (proguard-rules.pro). --- app/proguard-rules.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 4cec6005..f0cb8a31 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -37,4 +37,4 @@ -dontwarn org.xmlpull.v1.XmlPullParserFactory # Debug rule -#-keepnames class ** { *; } +-keepnames class ** From 656dacb206cd7528029146491559ba5f71104691 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 20:29:33 +0300 Subject: [PATCH 6/9] Keep java.util class names (proguard-rules.pro). --- app/proguard-rules.pro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index f0cb8a31..cf17f063 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -36,5 +36,5 @@ -dontwarn org.slf4j.LoggerFactory -dontwarn org.xmlpull.v1.XmlPullParserFactory -# Debug rule --keepnames class ** +# Keeping names of classes that produce undeterministic results +-keepnames class java.util.* From d1962f77dbe30d7f9b4e213eb2447dcdc9db452c Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 20:44:11 +0300 Subject: [PATCH 7/9] Keep all class names (proguard-rules.pro) + ShrinkingEnabled. --- app/build.gradle.kts | 2 +- app/proguard-rules.pro | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1cfc500b..babcdedb 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -42,7 +42,7 @@ android { getByName("release") { isMinifyEnabled = true // Enabling minify, test of reproducibility - isShrinkResources = false + isShrinkResources = true proguardFiles("proguard-rules.pro") } diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index cf17f063..b7efb780 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -37,4 +37,4 @@ -dontwarn org.xmlpull.v1.XmlPullParserFactory # Keeping names of classes that produce undeterministic results --keepnames class java.util.* +-keepnames class ** From 7a405d1c1d669ed77f2e79512ad0610b179fac52 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 20:46:27 +0300 Subject: [PATCH 8/9] Disabled shrinkingResources. --- app/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index babcdedb..6b4cf21c 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -41,8 +41,8 @@ android { } getByName("release") { - isMinifyEnabled = true // Enabling minify, test of reproducibility - isShrinkResources = true + isMinifyEnabled = true + isShrinkResources = false proguardFiles("proguard-rules.pro") } From fd6a0913b8c08e2ca68380f47fb53308e7d07504 Mon Sep 17 00:00:00 2001 From: acclorite Date: Fri, 2 Aug 2024 21:16:17 +0300 Subject: [PATCH 9/9] Removed blank line. --- app/proguard-rules.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index b7efb780..c0af59e0 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -37,4 +37,4 @@ -dontwarn org.xmlpull.v1.XmlPullParserFactory # Keeping names of classes that produce undeterministic results --keepnames class ** +-keepnames class ** \ No newline at end of file