自动区分推送通知的包名

This commit is contained in:
2022-01-30 21:47:05 +08:00
parent ce9a29e74b
commit 8655d532cc
2 changed files with 10 additions and 3 deletions

View File

@@ -165,7 +165,7 @@ class HookMain : IXposedHookLoadPackage {
/** 判断要设置的图标 */ /** 判断要设置的图标 */
when { when {
/** 如果开启了修复聊天 APP 的图标 */ /** 如果开启了修复聊天 APP 的图标 */
notifyInstance.packageName == QQ_PACKAGE_NAME && notifyInstance.opPkgName == QQ_PACKAGE_NAME &&
XPrefUtils.getBoolean( XPrefUtils.getBoolean(
HookMedium.ENABLE_CHAT_ICON_HOOK, HookMedium.ENABLE_CHAT_ICON_HOOK,
default = true default = true
@@ -206,7 +206,7 @@ class HookMain : IXposedHookLoadPackage {
val iconDrawable = notifyInstance.notification.smallIcon.loadDrawable(context) val iconDrawable = notifyInstance.notification.smallIcon.loadDrawable(context)
/** 获取发送通知的 APP */ /** 获取发送通知的 APP */
val packageName = notifyInstance.packageName val packageName = notifyInstance.opPkgName
/** 如果开启了修复聊天 APP 的图标 */ /** 如果开启了修复聊天 APP 的图标 */
if (packageName == QQ_PACKAGE_NAME && if (packageName == QQ_PACKAGE_NAME &&
XPrefUtils.getBoolean(HookMedium.ENABLE_CHAT_ICON_HOOK, default = true) XPrefUtils.getBoolean(HookMedium.ENABLE_CHAT_ICON_HOOK, default = true)
@@ -290,7 +290,7 @@ class HookMain : IXposedHookLoadPackage {
/** 获取通知对象 - 由于 MIUI 的版本迭代不规范性可能是空的 */ /** 获取通知对象 - 由于 MIUI 的版本迭代不规范性可能是空的 */
(param.args?.get(0) as? StatusBarNotification?)?.let { notifyInstance -> (param.args?.get(0) as? StatusBarNotification?)?.let { notifyInstance ->
/** 获取发送通知的 APP */ /** 获取发送通知的 APP */
val packageName = notifyInstance.packageName val packageName = notifyInstance.opPkgName
NotificationCompat() NotificationCompat()
/** 获取通知小图标 */ /** 获取通知小图标 */
val iconDrawable = val iconDrawable =

View File

@@ -29,6 +29,7 @@ import android.content.res.Configuration
import android.graphics.* import android.graphics.*
import android.graphics.Bitmap.createBitmap import android.graphics.Bitmap.createBitmap
import android.os.Build import android.os.Build
import android.service.notification.StatusBarNotification
import android.util.Base64 import android.util.Base64
import com.fankes.miui.notify.application.MNvApplication.Companion.appContext import com.fankes.miui.notify.application.MNvApplication.Companion.appContext
import java.io.DataInputStream import java.io.DataInputStream
@@ -111,6 +112,12 @@ val miuiVersion
} + " " + findPropString(key = "ro.system.build.version.incremental") } + " " + findPropString(key = "ro.system.build.version.incremental")
else "不是 MIUI 系统" else "不是 MIUI 系统"
/**
* 获取推送通知的包名
* @return [String]
*/
val StatusBarNotification.opPkgName get() = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) opPkg else packageName ?: ""
/** /**
* 得到安装包信息 * 得到安装包信息
* @return [PackageInfo] * @return [PackageInfo]