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

如何实现Swift本地通知定时触发后每分钟重复直至停止?

目标

我想确认是否仍可实现:在指定时间(例如每日15:00)触发Swift本地通知,之后每分钟重复推送直至通知被停止。

可行性依据

我知道过去可以实现此功能,因为我日常使用的提醒应用“Alarmed”正是这么做的!它允许设置多达64个(当前本地通知的调度上限)同时触发的闹钟。即使强制关闭应用,所有64条通知仍会按时推送;若忽略这些通知,它们会持续每分钟重复推送一次(时长超过2小时),这正是我自己的应用想要实现的效果……

我还测试过该应用(Alarmed),在关闭位置追踪权限且完全强制关闭的情况下,它仍能正常工作,说明它并未使用重新调度的技巧……

问题

我无法通过UNMutableNotificationContent API实现此功能。将触发器类型设置为UNCalendarNotificationTrigger,例如:

let trigger = UNCalendarNotificationTrigger(dateMatching: DateComponents(year: 2022, month: 1, hour: 10, minute: 25), repeats: true)

确实会在指定日期/时间触发通知,但如果通知被忽略或错过,不会在之后每分钟重复推送;而UNTimeIntervalNotificationTrigger:

let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 60, repeats: true)

会每分钟重复推送直至停止,但会立即开始重复(我认为这是个无意义的功能)!

我想将两者结合:先用Calendar触发器设置首次通知的触发时间,之后用Time Interval触发器从该时间点开始每分钟推送通知……但这似乎无法实现。

疑问

有没有人知道可以实现此功能的API(无论是当前版本还是该应用最后更新时的7年前版本)?即使当前API无法实现,我也只是出于好奇,因为我已经花了好几天时间研究如何实现!🙈


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 12:05:28