From 41f8462ffe73ff1de90669528a00d7649a6d85f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Wisniewski?= Date: Tue, 6 Oct 2026 19:46:30 +0200 Subject: [PATCH] 1.5: shrink and optimize release builds with R8 Release APK goes from 115 KB to 47 KB. Shizuku.newProcess is kept explicitly because ShizukuGrant reaches it by reflection. Co-Authored-By: Claude Opus 5.5 --- app/build.gradle | 8 +++++--- app/proguard-rules.pro | 8 ++++++++ fastlane/metadata/android/en-US/changelogs/6.txt | 1 + 3 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 app/proguard-rules.pro create mode 100644 fastlane/metadata/android/en-US/changelogs/6.txt diff --git a/app/build.gradle b/app/build.gradle index 9c4d73c..eb5da8e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,13 +10,15 @@ android { applicationId "com.lpw.graypause" minSdk 33 targetSdk 36 - versionCode 5 - versionName "1.4" + versionCode 6 + versionName "1.5" } buildTypes { release { - minifyEnabled false + minifyEnabled true + shrinkResources true + proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" } } diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..27988bb --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,8 @@ +# ShizukuGrant calls this private method by reflection (Shizuku 13 hides it); R8 would +# otherwise rename or drop it and the "Grant with Shizuku" button would fail at runtime. +-keep class rikka.shizuku.Shizuku { + private static rikka.shizuku.ShizukuRemoteProcess newProcess(java.lang.String[], java.lang.String[], java.lang.String); +} + +# Not shipped: compile-time annotations referenced by the Shizuku library. +-dontwarn androidx.annotation.** diff --git a/fastlane/metadata/android/en-US/changelogs/6.txt b/fastlane/metadata/android/en-US/changelogs/6.txt new file mode 100644 index 0000000..987fce5 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/6.txt @@ -0,0 +1 @@ +Smaller APK: release builds are now shrunk and optimized with R8.