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

Ionic 3实现每日特定时间发送本地通知的方法

实现Ionic 3每日特定时间发送本地通知

没问题,我来帮你搞定这个需求!你已经完成了插件安装和依赖引入的准备工作,接下来只需要在schedule方法里配置重复规则和触发时间,就能实现每日定时通知了。

核心思路

利用cordova-plugin-local-notification的repeat参数,将其设置为'daily',同时通过at指定你要触发通知的具体时间,就能让通知每天自动重复触发。

完整代码示例

把你的代码补全成这样就行:

// 获取当前日期的年、月、日,用来构建触发时间
const currentDate = new Date();
const year = currentDate.getFullYear();
const month = currentDate.getMonth();
const day = currentDate.getDate();

// 定义两个每日触发的时间点(上午10点、中午12点)
const time1 = new Date(year, month, day, 10, 0, 0);
const time2 = new Date(year, month, day, 12, 0, 0);

// 调度第一个每日重复通知
this.localNotifications.schedule({
  id: 1, // 唯一ID,每个通知的ID不能重复,否则会被覆盖
  title: '上午时段提醒',
  text: '已经10点啦,起来活动活动吧!',
  at: time1, // 指定触发时间
  repeat: 'daily', // 关键:设置为每日重复
  vibrate: true, // 触发时是否震动,可选
  sound: null // 如需自定义音效可设置路径,默认无音效
});

// 调度第二个每日重复通知
this.localNotifications.schedule({
  id: 2,
  title: '午餐时间到',
  text: '该放下手头的工作,去吃午饭啦!',
  at: time2,
  repeat: 'daily'
});

几个重要注意事项

  • 唯一ID必须设置:每个通知的id参数必须唯一,否则新的通知会覆盖旧的,导致只能看到一个通知。
  • 自动处理已过时间:如果当前时间已经超过了你设置的time1或time2,插件会自动把首次触发时间调整到第二天的对应时间,不用你额外写逻辑判断。
  • 通知权限确认:确保你的应用已经获取了设备的通知权限,你可以在初始化时手动调用this.localNotifications.requestPermission()来请求权限,避免通知被拦截。
  • 测试小技巧:测试的时候可以把触发时间改成当前时间的几分钟后,快速验证通知是否正常触发,没问题再改成目标时间。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:12:02