diff --git a/app/build.gradle b/app/build.gradle index 7b1778a..9a7b370 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -68,8 +68,8 @@ dependencies { implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1' implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1' compileOnly 'de.robv.android.xposed:api:82' - implementation 'com.highcapable.yukihookapi:api:1.0.2' - ksp 'com.highcapable.yukihookapi:ksp-xposed:1.0.2' + implementation 'com.highcapable.yukihookapi:api:1.0.3' + ksp 'com.highcapable.yukihookapi:ksp-xposed:1.0.3' implementation 'com.geyifeng.immersionbar:immersionbar:3.2.0' implementation 'com.geyifeng.immersionbar:immersionbar-ktx:3.2.0' implementation 'com.squareup.okhttp3:okhttp:4.9.3' diff --git a/app/src/main/java/com/fankes/miui/notify/hook/HookEntry.kt b/app/src/main/java/com/fankes/miui/notify/hook/HookEntry.kt index c77c9d4..420e4c0 100644 --- a/app/src/main/java/com/fankes/miui/notify/hook/HookEntry.kt +++ b/app/src/main/java/com/fankes/miui/notify/hook/HookEntry.kt @@ -261,9 +261,7 @@ class HookEntry : YukiHookXposedInitProxy { */ private val PackageParam.globalContext get() = safeOfNull { - if (SystemUIApplicationClass.clazz.hasMethod(name = "getContext")) - SystemUIApplicationClass.clazz.method { name = "getContext" }.get().invoke() - else null + SystemUIApplicationClass.clazz.method { name = "getContext" }.ignoredError().get().invoke() } /** @@ -505,7 +503,7 @@ class HookEntry : YukiHookXposedInitProxy { replaceAny { hookIgnoreStatusBarIconColor( context = globalContext ?: error("GlobalContext got null"), - expandedNf = args[0] as? StatusBarNotification? + expandedNf = firstArgs as? StatusBarNotification? ) } } @@ -526,7 +524,7 @@ class HookEntry : YukiHookXposedInitProxy { }.onFind { isUseLegacy = true } } afterHook { - (globalContext ?: args[0] as Context).also { context -> + (globalContext ?: firstArgs as Context).also { context -> hookSmallIconOnSet( context = context, args[if (isUseLegacy) 1 else 0] as? StatusBarNotification?, @@ -597,15 +595,15 @@ class HookEntry : YukiHookXposedInitProxy { } } intercept() - }.ignoredAllFailure() + } injectMember { method { name = "resetIconBgAndPaddings" param(ImageViewClass, ExpandedNotificationClass.clazz) } intercept() - }.ignoredAllFailure() - } + } + }.ignoredHookClassNotFoundFailure() } } }