持久本地通知 iOS

Posted

技术标签:

【中文标题】持久本地通知 iOS【英文标题】:Persistent local notification iOS 【发布时间】:2016-03-14 21:46:32 【问题描述】:

是否可以在 ios 上拥有持久的本地通知?我希望在启用应用程序的某些方面时收到通知,并且该通知会一直持续到用户禁用应用程序中的功能为止。

到目前为止,我的解决方案是每 60 秒左右调用一次以下命令来刷新通知:

[[UIApplication sharedApplication] cancelLocalNotification:localNotification];
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; 

但是这样做的缺点是通知不是真正持久的,而且每次通知触发时屏幕都会亮起。有没有更好的解决方案?

android 中这很简单:

builder.setOngoing(true)

【问题讨论】:

在某些情况下,您可以考虑使用钱包(存折)卡,当某些条件(时间、位置...)匹配时,它可以在锁定屏幕上持续显示数据。但它的限制很大。你到底想达到什么目的,即为什么你需要通知持续存在? 猜测是因为有些公司只是希望他们的 iOS 应用程序与 Android 应用程序完全相同。两者之间存在根本区别,只是有些人似乎不明白。 【参考方案1】:

不,这是不可能的。您也无法控制已发送的本地通知。

如果您希望某些内容留在通知中心,请使用“今日”小部件。

https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/ExtensibilityPG/NotificationCenter.html

【讨论】:

以上是关于持久本地通知 iOS的主要内容,如果未能解决你的问题,请参考以下文章

如果在 iOS 设置中禁用通知访问时安排本地通知,则不会在 iOS 13 上触发本地通知

iOS开发--本地通知与远程通知

iOS中 本地通知/本地通知详解 韩俊强的博客

iOS开发本地通知

iOS 本地通知的实现

iOS 本地通知的实现