Modify support MIUI custom notification icon when enable force app icon function in SystemUIHooker, activity_main

This commit is contained in:
2023-02-02 06:30:35 +08:00
parent 2ff2f735a0
commit 1ffee75977
2 changed files with 18 additions and 1 deletions

View File

@@ -472,7 +472,11 @@ object SystemUIHooker : YukiBaseHooker() {
printLogcat(tag = "NotifyIcon", context, notifyInstance, isCustom = customIcon != null, isGrayscaleIcon)
/** 处理自定义通知图标优化 */
when {
prefs.get(DataConst.ENABLE_NOTIFY_ICON_FORCE_APP_ICON) -> setDefaultNotifyIcon(context.appIconOf(notifyInstance.nfPkgName))
prefs.get(DataConst.ENABLE_NOTIFY_ICON_FORCE_APP_ICON) -> {
@Suppress("DEPRECATION")
val miuiAppIcon = notifyInstance.notification?.extras?.getParcelable<Icon?>("miui.appIcon")
setDefaultNotifyIcon(drawable = miuiAppIcon?.loadDrawable(context) ?: context.appIconOf(notifyInstance.nfPkgName))
}
customIcon != null -> iconImageView.apply {
/** 设置不要裁切到边界 */
clipToOutline = false

View File

@@ -646,6 +646,7 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:orientation="vertical">
<com.fankes.miui.notify.ui.widget.MaterialSwitch
@@ -669,6 +670,18 @@
android:text="此选项默认关闭,开启后下拉通知栏中的通知图标将会被替换为 APP 自身图标,但是不会更改状态栏中的通知图标,这是一个破坏原生通知图标的行为,仅针对部分有需要的用户而添加,我们不推荐开启这个功能,请根据个人偏好进行选择是否需要开启。"
android:textColor="@color/colorTextDark"
android:textSize="12sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:alpha="0.6"
android:lineSpacingExtra="6dp"
android:text="MIUI 在后期的系统版本中自己设置了一种自定义的彩色通知图标,但是只能被自己的系统 APP 所使用,第三方 APP 还是不能使用的 (这也是一种破坏行为),开启此选项后如果发现当前是 MIUI 自己设置的自定义通知图标,那么就会优先使用此图标替换 (例如:选择输入法、融合卫星定位以及蓝牙耳机)。"
android:textColor="@color/colorTextDark"
android:textSize="12sp"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>