From dfa47653f03a0345be02d0631c6f19de34ea1c0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B9=8C=E5=A0=86=E5=B0=8F=E9=80=8F=E6=98=8E?= Date: Fri, 18 Mar 2022 00:54:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D22.3.14=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=E8=A7=A3=E9=99=A4=E6=88=AA=E5=B1=8F=E8=A3=81=E5=88=87=E9=99=90?= =?UTF-8?q?=E5=88=B6=E5=A4=B1=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/SettingsActivity.kt | 7 +++-- .../lt2333/simplicitytools/hook/MainHook.kt | 2 ++ .../simplicitytools/hook/app/ScreenShot.kt | 15 ++++++++++ .../app/screenshot/UnlockUnlimitedCropping.kt | 28 +++++++++++++++++++ app/src/main/res/values/arrays.xml | 1 + 5 files changed, 50 insertions(+), 3 deletions(-) create mode 100644 app/src/main/java/com/lt2333/simplicitytools/hook/app/ScreenShot.kt create mode 100644 app/src/main/java/com/lt2333/simplicitytools/hook/app/screenshot/UnlockUnlimitedCropping.kt diff --git a/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt b/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt index 8cea75e1..d8da62ee 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/activity/SettingsActivity.kt @@ -186,13 +186,14 @@ class SettingsActivity : MIUIActivity() { } setRButton(R.string.Done) { val command = arrayOf( + "killall com.android.systemui", "killall com.miui.home", "killall com.miui.securitycenter ", + "killall com.android.settings", "killall com.miui.powerkeeper", - "killall com.miui.mediaeditor", - "killall com.android.systemui", "killall com.android.updater", - "killall com.android.settings" + "killall com.miui.mediaeditor", + "killall com.miui.screenshot" ) ShellUtils.execCommand(command, true) dismiss() diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/MainHook.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/MainHook.kt index 4c1be34e..78b83a59 100644 --- a/app/src/main/java/com/lt2333/simplicitytools/hook/MainHook.kt +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/MainHook.kt @@ -38,6 +38,8 @@ class MainHook : IXposedHookLoadPackage,IXposedHookZygoteInit { "com.android.settings" -> Settings().handleLoadPackage(lpparam) //主题壁纸 "com.android.thememanager" -> ThemeManager().handleLoadPackage(lpparam) + //截屏 + "com.miui.screenshot" -> ScreenShot().handleLoadPackage(lpparam) } } } diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/ScreenShot.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/ScreenShot.kt new file mode 100644 index 00000000..fcf884d6 --- /dev/null +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/ScreenShot.kt @@ -0,0 +1,15 @@ +package com.lt2333.simplicitytools.hook.app + +import com.lt2333.simplicitytools.hook.app.screenshot.UnlockUnlimitedCropping +import de.robv.android.xposed.IXposedHookLoadPackage +import de.robv.android.xposed.XposedBridge +import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam + +class ScreenShot : IXposedHookLoadPackage { + + override fun handleLoadPackage(lpparam: LoadPackageParam) { + XposedBridge.log("Simplicitytools: 成功 Hook " + javaClass.simpleName) + //锁定最高刷新率 + UnlockUnlimitedCropping().handleLoadPackage(lpparam) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/lt2333/simplicitytools/hook/app/screenshot/UnlockUnlimitedCropping.kt b/app/src/main/java/com/lt2333/simplicitytools/hook/app/screenshot/UnlockUnlimitedCropping.kt new file mode 100644 index 00000000..12c1717b --- /dev/null +++ b/app/src/main/java/com/lt2333/simplicitytools/hook/app/screenshot/UnlockUnlimitedCropping.kt @@ -0,0 +1,28 @@ +package com.lt2333.simplicitytools.hook.app.screenshot + +import com.lt2333.simplicitytools.util.XSPUtils +import de.robv.android.xposed.IXposedHookLoadPackage +import de.robv.android.xposed.XC_MethodHook +import de.robv.android.xposed.XposedHelpers +import de.robv.android.xposed.callbacks.XC_LoadPackage + +class UnlockUnlimitedCropping :IXposedHookLoadPackage { + override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) { + //截图无限裁切 + val classIfExists2 = XposedHelpers.findClassIfExists( + "com.miui.gallery.editor.photo.screen.crop.ScreenCropView\$b", + lpparam.classLoader + ) + + XposedHelpers.findAndHookMethod( + classIfExists2, + "a", + object : XC_MethodHook() { + override fun beforeHookedMethod(param: MethodHookParam) { + if (XSPUtils.getBoolean("unlock_unlimited_cropping",false)) { + param.result = 0 + } + } + }) + } +} \ No newline at end of file diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 64dfb9b7..dc8ed551 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -10,5 +10,6 @@ com.android.updater com.android.settings com.android.thememanager + com.miui.screenshot \ No newline at end of file