x-notify-s 本地通知
弹出本地系统通知。参数与回调对齐 DCloud success / fail / complete。对外方法名加 x 前缀,避免和系统或微信同名冲突。
这是标准 -s API 插件,页面里 import 后直接调用。通知以标题为主,副标题和右侧图都是可选参数,不传就不会显示。右侧图可以是 http(s) 远程地址,也可以是 /static、file://、绝对路径等本地地址。图片下载或解码失败时,仍会弹出文字通知。
兼容性
| Harmony | iOS | Android | WEB | 微信小程序 |
|---|---|---|---|---|
| 支持 | 支持 | 支持 | 支持 Notification API 的浏览器 | 不支持 |
调用
ts
import { xShowNotify, XNotifyShowOptions } from "@/uni_modules/x-notify-s"
xShowNotify({
title: "订单已发货",
subtitle: "您的包裹正在配送中",
success: (res) => {
console.log(res.notifyId, res.errMsg)
},
fail: (err) => {
console.log(err.errCode, err.errMsg)
}
} as XNotifyShowOptions)需要右侧图时再传 image,不传则只有文字:
ts
xShowNotify({
title: "订单已发货",
subtitle: "您的包裹正在配送中",
image: "https://example.com/icon.png"
} as XNotifyShowOptions)取消指定通知或全部通知:
ts
import { xCancelNotify } from "@/uni_modules/x-notify-s"
xCancelNotify({ notifyId: 1 })
xCancelNotify(null)方法
| 名称 | 说明 |
|---|---|
| xShowNotify | 弹出本地系统通知 |
| xCancelNotify | 取消一条或全部本地通知 |
| xRequestNotifyPermission | 申请通知权限 |
| xIsNotifyEnabled | 查询通知是否已授权 |
参数
XNotifyShowOptions
| 字段 | 说明 | 默认 |
|---|---|---|
| title | 标题,必填 | - |
| subtitle | 副标题,可选 | 空 |
| image | 右侧图,可选。远程 URL 或本地路径,不传不显示 | 空 |
| notifyId | 通知编号,不传则自动递增 | 自动 |
| sound | 是否播放提示音 | true |
| success | 成功,errMsg 为 xShowNotify:ok | - |
| fail | 失败 | - |
| complete | 结束 | - |
xShowNotify 在未授权时会先申请通知权限,授权后再弹出。
错误码
| 码 | 含义 |
|---|---|
| 1001 | 系统错误 |
| 1002 | 参数错误,例如标题为空 |
| 1003 | 通知服务未开启 |
| 1004 | 通知权限被拒绝 |
| 1008 | 当前平台不支持此功能 |
平台差异
- Android 13+ 动态申请
POST_NOTIFICATIONS,右侧图走NotificationCompat.setLargeIcon。 - iOS 使用
UNUserNotificationCenter,副标题对应subtitle,右侧图为UNNotificationAttachment。前台也会横幅展示。 - HarmonyOS 使用
notificationManager.publish,右侧图走notificationIcon。 - Web 走浏览器
Notification,图标字段为icon。 - 微信小程序没有本地系统通知,统一返回 1008。
- 点击通知会回到当前应用。图片仅支持常见位图(png / jpg / webp / gif),不支持 svg。
版本
版权归 https://xui.tmui.design 你不得修改及二次开发,仅供 TMUI4 会员商用使用。不得转给非 VIP 会员使用,一经查实数倍赔偿,并追究法律责任。
更新日志
1.0.0(2026-08-17)
- 新增本地系统通知:
xShowNotify/xCancelNotify/xRequestNotifyPermission/xIsNotifyEnabled - 支持标题、副标题、右侧图(远程 URL 或本地路径)
- 覆盖 Android / iOS / HarmonyOS / Web,微信小程序返回不支持
