如何设置在第一次设置通知后每秒钟触发一次的本地通知?

Posted

技术标签:

【中文标题】如何设置在第一次设置通知后每秒钟触发一次的本地通知?【英文标题】:How can I set the Local notification which fire every seconds after first set notification? 【发布时间】:2017-07-21 05:42:35 【问题描述】:

我想要什么,我将本地通知设置为上午 7:00,当它立即触发时,通知会不断发出,直到用户不对通知执行任何操作或打开应用程序。

下面是第一次发送通知的代码

 let alarmNotification: UNMutableNotificationContent = UNMutableNotificationContent()
 alarmNotification.title = "Demo"
 alarmNotification.body = "Test"
 alarmNotification.categoryIdentifier = "myDemoCategory"

 let now = Date()
 let triggerWeekly = Calendar.current.dateComponents([.weekday,.hour,.minute], from: now)
 let trigger = UNCalendarNotificationTrigger(dateMatching: triggerWeekly, repeats: true)
 let request = UNNotificationRequest(identifier: "TestNotification\(now)", content: alarmNotification, trigger: trigger)

 UNUserNotificationCenter.current().add(request) (error) in
     if let error = error          
           print("Uh oh! We had an error: \(error)")
     
 

请建议持续发送本地通知。

谢谢

【问题讨论】:

【参考方案1】:

在您的日期组件中添加秒数

let triggerWeekly = Calendar.current.dateComponents([.weekday,.hour,.minute], from: now)

通过增加秒数来设置您希望每秒循环的通知数量,在 ios 中 Max 为 64。

点击通知时会关闭所有通知并重置以供下次使用。

【讨论】:

感谢您的回答。我试过了,但发生了什么,我设置了 12:28 的闹钟,它不会连续触发到 12:28:59。我希望该通知不断出现,直到用户不触摸通知或应用程序。作为应用商店“Alarmy”中的一款应用,它会持续触发。 iOS 存在限制,您的 aap 本地通知有限,而且在没有用户操作的情况下接收通知时没有回调 是的,我同意这一点,但应用商店中的一个应用程序警报应用程序它会不断发出通知。

以上是关于如何设置在第一次设置通知后每秒钟触发一次的本地通知?的主要内容,如果未能解决你的问题,请参考以下文章

iOS 11-每 x 分钟重复一次的用户本地通知

如何一次在本地通知中将日期数组设置为fireDate

在特定时间停止 iOS 本地通知

如何设置本地通知以每 48 小时通知用户一次?

linux里面如何利用crontab 和 notify-send ,实现每秒钟发送一次通知到桌面?

如何在swift 3中每天在特定时间触发本地通知