You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:使用katzer/Cordova本地通知插件仅显示最新通知,无法查看完整列表

解决Cordova本地通知仅显示最新一条的问题

嘿,我来帮你搞定iOS上本地通知只显示最新一条的问题!这种情况大概率是你在创建通知时踩了一个常见的坑——重复使用了同一个通知ID,iOS系统会自动用新通知覆盖同ID的旧通知,自然就看不到历史列表了。

下面是具体的排查和解决步骤:

1. 给每个通知分配唯一ID

这是最核心的修复点,确保每次调用通知接口时,id参数都是独一无二的。你可以用时间戳、递增计数器或者结合通知内容生成唯一标识:

// 用当前时间戳生成唯一ID
const uniqueNotificationId = Date.now();

cordova.plugins.notification.local.schedule({
    id: uniqueNotificationId,
    title: "新消息提醒",
    text: "这是一条不会被覆盖的通知内容",
    foreground: true // 应用前台时也显示通知
});

2. 检查通知分组设置

如果你给通知加了group属性,可能旧通知被折叠到分组里没展开。可以尝试关闭分组,或者调整分组配置:

cordova.plugins.notification.local.schedule({
    id: uniqueNotificationId,
    title: "通知标题",
    text: "通知内容",
    // 如果不需要分组,直接删掉下面两行
    group: "myAppNotifications",
    groupSummary: false // 关闭分组汇总,避免合并通知
});

3. 确认iOS系统通知设置

有时候系统层面的设置也会限制通知显示:

  • 打开iPhone的「设置」→「通知」→找到你的应用
  • 确保「通知中心」是开启状态
  • 检查「通知样式」是否设为「横幅」或「提醒」,不要选「无」
  • 确认「显示历史记录」相关选项没有被限制

4. 更新插件到最新版本

旧版本的katzer/cordova-plugin-local-notifications可能存在iOS通知的兼容性bug,建议更新到稳定版:

# 先移除旧插件
cordova plugin remove cordova-plugin-local-notifications
# 安装最新版
cordova plugin add cordova-plugin-local-notifications@latest

试试这些方法,应该就能在通知中心看到过去24小时的完整通知列表了!

内容的提问来源于stack exchange,提问作者charlitos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:17:56