diff --git a/app/src/main/java/com/fankes/miui/notify/hook/HookMain.kt b/app/src/main/java/com/fankes/miui/notify/hook/HookMain.kt index fd47c9e..56f0f2f 100644 --- a/app/src/main/java/com/fankes/miui/notify/hook/HookMain.kt +++ b/app/src/main/java/com/fankes/miui/notify/hook/HookMain.kt @@ -165,7 +165,7 @@ class HookMain : IXposedHookLoadPackage { /** 判断要设置的图标 */ when { /** 如果开启了修复聊天 APP 的图标 */ - notifyInstance.packageName == QQ_PACKAGE_NAME && + notifyInstance.opPkgName == QQ_PACKAGE_NAME && XPrefUtils.getBoolean( HookMedium.ENABLE_CHAT_ICON_HOOK, default = true @@ -206,7 +206,7 @@ class HookMain : IXposedHookLoadPackage { val iconDrawable = notifyInstance.notification.smallIcon.loadDrawable(context) /** 获取发送通知的 APP */ - val packageName = notifyInstance.packageName + val packageName = notifyInstance.opPkgName /** 如果开启了修复聊天 APP 的图标 */ if (packageName == QQ_PACKAGE_NAME && XPrefUtils.getBoolean(HookMedium.ENABLE_CHAT_ICON_HOOK, default = true) @@ -290,7 +290,7 @@ class HookMain : IXposedHookLoadPackage { /** 获取通知对象 - 由于 MIUI 的版本迭代不规范性可能是空的 */ (param.args?.get(0) as? StatusBarNotification?)?.let { notifyInstance -> /** 获取发送通知的 APP */ - val packageName = notifyInstance.packageName + val packageName = notifyInstance.opPkgName NotificationCompat() /** 获取通知小图标 */ val iconDrawable = diff --git a/app/src/main/java/com/fankes/miui/notify/utils/Utils.kt b/app/src/main/java/com/fankes/miui/notify/utils/Utils.kt index 350acbb..e22143b 100644 --- a/app/src/main/java/com/fankes/miui/notify/utils/Utils.kt +++ b/app/src/main/java/com/fankes/miui/notify/utils/Utils.kt @@ -29,6 +29,7 @@ import android.content.res.Configuration import android.graphics.* import android.graphics.Bitmap.createBitmap import android.os.Build +import android.service.notification.StatusBarNotification import android.util.Base64 import com.fankes.miui.notify.application.MNvApplication.Companion.appContext import java.io.DataInputStream @@ -111,6 +112,12 @@ val miuiVersion } + " " + findPropString(key = "ro.system.build.version.incremental") else "不是 MIUI 系统" +/** + * 获取推送通知的包名 + * @return [String] + */ +val StatusBarNotification.opPkgName get() = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) opPkg else packageName ?: "" + /** * 得到安装包信息 * @return [PackageInfo]