From 6628ab6cf407f0b7a07f5f89d518ca2125a554a1 Mon Sep 17 00:00:00 2001 From: frknkrc44 Date: Mon, 18 Aug 2025 04:14:52 +0300 Subject: [PATCH] Add MIUI fix (WIP) --- .../hidemyapplist/xposed/XposedEntry.kt | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/xposed/src/main/java/icu/nullptr/hidemyapplist/xposed/XposedEntry.kt b/xposed/src/main/java/icu/nullptr/hidemyapplist/xposed/XposedEntry.kt index 073965b..c0d8066 100644 --- a/xposed/src/main/java/icu/nullptr/hidemyapplist/xposed/XposedEntry.kt +++ b/xposed/src/main/java/icu/nullptr/hidemyapplist/xposed/XposedEntry.kt @@ -1,5 +1,6 @@ package icu.nullptr.hidemyapplist.xposed +import android.content.Intent import android.content.pm.IPackageManager import android.os.Build import com.github.kyuubiran.ezxhelper.init.EzXHelperInit @@ -34,13 +35,26 @@ class XposedEntry : IXposedHookZygoteInit, IXposedHookLoadPackage { logI(TAG, "Hook entry") if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - findMethod("com.android.server.pm.BroadcastHelper") { - name == "sendPackageBroadcastAndNotify" - }.hookBefore { param -> - HMAService.instance?.handlePackageEvent( - param.args[0] as String?, - param.args[1] as String? - ) + try { + findMethod("com.android.server.pm.BroadcastHelper") { + name == "sendPackageBroadcastAndNotify" + }.hookBefore { param -> + HMAService.instance?.handlePackageEvent( + param.args[0] as String?, + param.args[1] as String? + ) + } + } catch (e: Throwable) { + findMethod("com.android.internal.content.PackageMonitor") { + name == "onReceive" + }.hookBefore { param -> + val intent = param.args[1] as Intent? ?: return@hookBefore + + HMAService.instance?.handlePackageEvent( + intent.action, + intent.data?.encodedSchemeSpecificPart + ) + } } } else { findMethod("com.android.server.pm.PackageManagerService") {