iOS 10中本地通知(UNNotificationRequest)的限制

13

我知道 UILocalNotification 的本地通知限制是64条。这写在了 苹果开发者文档 中。但是在iOS 10中,UILocalNotification 已被弃用,而苹果建议使用 UNNotificationRequest。但是 苹果开发者文档 并没有提到通知计数的限制。 我在 Stack Overflow 上找到了这个答案,但它没有链接到苹果开发者文档或类似的东西(只是一个观点)。 有人确定本地通知的限制吗? 也许有人知道文档链接,或者苹果有官方回复吗?

3个回答

12
尽管它没有正式文档,但是 测试表明UNNotificationRequest 仍保留着最多64个通知的限制。
然而,值得注意的是,他们处理通知队列的方式已经改变。如果有超过64个通知:
  • UILocalNotification 只会保留64个最近的通知
  • UNNotificationRequest 则保留最后设定的64个通知
这可能是一个错误,并在此 radar 中有记录。

感谢您发现了这个问题! - hyouuu

4

IOS 12版本的UNNotificationCenter.h中,在(void)addNotificationRequest:(UNNotificationRequest *)request withCompletionHandler:(nullable void(^)(NSError *__nullable error))completionHandler;的注释中写道:

可以安排通知请求来通过时间和位置通知用户。有关详细信息,请参阅 UNNotificationTrigger。调用-addNotificationRequest: 将使用相同的标识符替换现有的通知请求。具有标识符作为现有交付通知的通知请求将在触发时警报新的通知请求并替换现有的交付通知。 应用程序一次可以计划的挂起通知请求数量受系统限制


1

确实如此,我刚刚检查了iOS 10.2版本,你可以添加的UNNotificationRequest总数限制仍然为64。


3
UNNotificationRequest的文档没有提到这个限制,通知指南中也没有提及。是否有官方来源可以提供?我不怀疑存在这个限制,但希望看到有文件记录。 - shim
1
一个应用程序只能有有限数量的预定通知;系统会保留最快触发的64个通知(自动重新安排的通知算作一个通知),并且丢弃其余的通知。 - lszrh
3
и‡ҒiOS 10иµ·пәЊUILocalNotificationе·Із»Џиұ«еәѓз”ЁгЂ‚ж–°зљ„UNNotificationRequestз±»жІҰжњ‰жЏђеЏЉеЏҮд»Ө安жҺ’зљ„йЂљзџӨ数量限制。 - Martin Berger

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接