iphone - 当本地通知到达或超过可以使用的通知总数时执行某些操作

标签 iphone ios uilocalnotification alarm localnotification

所以,我有一个锻炼应用程序,我们有 10/15 秒的重复计时器,我们通过它显示用户完成的进度。为了使其也能在后台运行,我使用了本地通知。但是,正如 Apple 所说,我们只能有 ONLY 64 local notifications 在我们应用程序的任何给定实例中。

所以,现在发生的是当应用程序在后台并且这 64 条通知已经完成时,我无法控制该应用程序。如果用户打开应用程序,我可以重新添加 64 条通知。但是,如果用户根本没有打开应用程序,这 64 条通知都已完成,那我该怎么办?

当任何本地通知到达时,应用程序内部是否发生任何事件?有什么办法可以超过通知的数量吗?

我认为应该有一个解决方案,因为有许多警报应用都采用相同的方法。

请帮忙!

最佳答案

您可以使用 repeatInterval property of UILocalNotification让您的通知自动重复每秒、分钟、小时、天或其他单位(参见 NSCalendarUnit documentation ):

notification.repeatInterval = NSMinuteCalendarUnit;

对于您的情况,这意味着您可以创建 5 个通知,fireDate 间隔 10 秒,每个通知的 repeatIntervalNSMinuteCalendarUnit。这将导致用户无限期地每 10 秒收到一次通知,而您将只能安排 5 次通知,这远低于 64 次的限制。

此技术的唯一缺点是在用户打开应用程序之前无法停止通知,因为您需要取消所有通知才能停止它们,而且您只能在应用程序运行时执行此操作运行。

关于iphone - 当本地通知到达或超过可以使用的通知总数时执行某些操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16734310/

相关文章:

iphone - 像 atm 机器输入一样实现文本字段输入

iphone - 在通过 PhoneGap 创建的 iPhone 应用程序中使用 Google map

iphone - 将对象设置为 nil 是否将其标记为垃圾回收

ios - 请求用户允许在触发本地通知时显示警报

带有分隔符 nsstring 的 iPhone 设备

ios - 由于自动布局没有计算尺寸,将 subview 添加到自定义 View 最终是错误的

ios - 将外部配件连接到 3.5 毫米耳机插孔时无法收到通知

ios - UILocalNotification 在应用程序启动时被重复调用

swift - 未显示 iOS 15 通信通知图片

ios - 应用程序关闭后 UILocalNotification 为零