From 1a5f8096340cc53f170ce2d297d4aad2a1061721 Mon Sep 17 00:00:00 2001 From: vvb2060 Date: Fri, 5 Mar 2021 03:03:59 +0800 Subject: [PATCH] Optimize apk size again (#267) --- app/build.gradle.kts | 1 + app/proguard-rules.pro | 1 + .../github/lsposed/manager/ui/activity/MainActivity.java | 9 ++++++--- .../main/java/io/github/lsposed/manager/util/DoHDNS.java | 6 ++++-- build.gradle.kts | 4 ++++ 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index d267e6e5..b7c1a9ce 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -68,6 +68,7 @@ android { packagingOptions { resources { excludes += "META-INF/**" + excludes += "okhttp3/**" excludes += "kotlin/**" excludes += "org/**" excludes += "**.properties" diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 6688fac0..f97f70de 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -18,6 +18,7 @@ -repackageclasses -allowaccessmodification +-overloadaggressively # Gson uses generic type information stored in a class file when working with fields. Proguard # removes such information by default, so configure it to keep all of it. diff --git a/app/src/main/java/io/github/lsposed/manager/ui/activity/MainActivity.java b/app/src/main/java/io/github/lsposed/manager/ui/activity/MainActivity.java index 0e706665..d9afc721 100644 --- a/app/src/main/java/io/github/lsposed/manager/ui/activity/MainActivity.java +++ b/app/src/main/java/io/github/lsposed/manager/ui/activity/MainActivity.java @@ -108,12 +108,15 @@ public class MainActivity extends BaseActivity { } } else { cardBackgroundColor = ResourcesKt.resolveColor(getTheme(), R.attr.colorInstall); - boolean isMagiskInstalled = Arrays.stream(System.getenv("PATH").split(File.pathSeparator)).anyMatch(str -> new File(str, "magisk").exists()); + boolean isMagiskInstalled = Arrays.stream(System.getenv("PATH").split(File.pathSeparator)) + .anyMatch(str -> new File(str, "magisk").exists()); binding.statusTitle.setText(isMagiskInstalled ? R.string.Install : R.string.NotInstall); binding.statusSummary.setText(isMagiskInstalled ? R.string.InstallDetail : R.string.NotInstallDetail); - if (!isMagiskInstalled) binding.status.setOnClickListener(null); + if (!isMagiskInstalled) { + binding.status.setOnClickListener(null); + binding.download.setVisibility(View.GONE); + } binding.statusIcon.setImageResource(R.drawable.ic_error); - binding.download.setVisibility(View.GONE); Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_LONG).show(); } binding.status.setCardBackgroundColor(cardBackgroundColor); diff --git a/app/src/main/java/io/github/lsposed/manager/util/DoHDNS.java b/app/src/main/java/io/github/lsposed/manager/util/DoHDNS.java index cb37c58c..de95676f 100644 --- a/app/src/main/java/io/github/lsposed/manager/util/DoHDNS.java +++ b/app/src/main/java/io/github/lsposed/manager/util/DoHDNS.java @@ -38,14 +38,16 @@ public class DoHDNS implements Dns { public DoHDNS() { DnsOverHttps.Builder builder = new DnsOverHttps.Builder() + .resolvePrivateAddresses(true) + .resolvePublicAddresses(true) .client(new OkHttpClient.Builder().build()) .url(HttpUrl.get("https://cloudflare-dns.com/dns-query")); try { - builder.bootstrapDnsHosts(InetAddress.getByName("162.159.36.1"), + builder.bootstrapDnsHosts( + InetAddress.getByName("162.159.36.1"), InetAddress.getByName("162.159.46.1"), InetAddress.getByName("1.1.1.1"), InetAddress.getByName("1.0.0.1"), - InetAddress.getByName("162.159.132.53"), InetAddress.getByName("2606:4700:4700::1111"), InetAddress.getByName("2606:4700:4700::1001"), InetAddress.getByName("2606:4700:4700::0064"), diff --git a/build.gradle.kts b/build.gradle.kts index e471f1cd..23e7da7e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -23,8 +23,12 @@ buildscript { repositories { google() mavenCentral() + maven { + setUrl("https://storage.googleapis.com/r8-releases/raw") + } } dependencies { + classpath("com.android.tools:r8:3.0.26-dev") classpath("com.android.tools.build:gradle:7.0.0-alpha08") classpath("org.eclipse.jgit:org.eclipse.jgit:5.10.0.202012080955-r") classpath(kotlin("gradle-plugin", version = "1.4.31"))