From 9de59640f729bd4ab995b50c1bcfa61647790d24 Mon Sep 17 00:00:00 2001 From: LittleTurtle2333 <841474544@qq.com> Date: Fri, 18 Feb 2022 17:11:42 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=86=E5=88=86=20=E9=9A=90=E8=97=8FHD?= =?UTF-8?q?=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- .../simplicitytools/hook/app/SystemUI.kt | 53 +++++++++++++++---- 2 files changed, 45 insertions(+), 12 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index ed7804ef..d0bf8cff 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.lt2333.simplicitytools" minSdk 30 targetSdk 32 - versionCode 8 - versionName '1.0.7' + versionCode 9 + versionName '1.0.8' testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt index 171b0519..6674db32 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/SystemUI.kt @@ -290,34 +290,67 @@ class SystemUI : IXposedHookLoadPackage { ) XposedHelpers.findAndHookMethod( classIfExists, - "initViewState","com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState", + "initViewState", + "com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState", object : XC_MethodHook() { override fun afterHookedMethod(param: MethodHookParam) { if (prefs.hasFileChanged()) { prefs.reload() } - if (prefs.getBoolean("hide_hd_icon", false)) { - val smallHd = XposedHelpers.getObjectField(param.thisObject, "mSmallHd") as ImageView - val bigHd = XposedHelpers.getObjectField(param.thisObject, "mVolte") as ImageView - smallHd.visibility = View.GONE + if (prefs.getBoolean("hide_big_hd_icon", false)) { + val bigHd = XposedHelpers.getObjectField( + param.thisObject, + "mVolte" + ) as ImageView bigHd.visibility = View.GONE } + if (prefs.getBoolean("hide_small_hd_icon", false)) { + val smallHd = XposedHelpers.getObjectField( + param.thisObject, + "mSmallHd" + ) as ImageView + smallHd.visibility = View.GONE + } + if (prefs.getBoolean("hide_hd_no_service_icon", false)) { + val volteNoService = XposedHelpers.getObjectField( + param.thisObject, + "mVolteNoService" + ) as ImageView + volteNoService.visibility = View.GONE + } } }) XposedHelpers.findAndHookMethod( classIfExists, - "updateState","com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState", + "updateState", + "com.android.systemui.statusbar.phone.StatusBarSignalPolicy\$MobileIconState", object : XC_MethodHook() { override fun afterHookedMethod(param: MethodHookParam) { if (prefs.hasFileChanged()) { prefs.reload() } - if (prefs.getBoolean("hide_hd_icon", false)) { - val smallHd = XposedHelpers.getObjectField(param.thisObject, "mSmallHd") as ImageView - val bigHd = XposedHelpers.getObjectField(param.thisObject, "mVolte") as ImageView - smallHd.visibility = View.GONE + if (prefs.getBoolean("hide_big_hd_icon", false)) { + val bigHd = XposedHelpers.getObjectField( + param.thisObject, + "mVolte" + ) as ImageView bigHd.visibility = View.GONE } + if (prefs.getBoolean("hide_small_hd_icon", false)) { + val smallHd = XposedHelpers.getObjectField( + param.thisObject, + "mSmallHd" + ) as ImageView + + smallHd.visibility = View.GONE + } + if (prefs.getBoolean("hide_hd_no_service_icon", false)) { + val volteNoService = XposedHelpers.getObjectField( + param.thisObject, + "mVolteNoService" + ) as ImageView + volteNoService.visibility = View.GONE + } } }) } catch (e: Exception) {