关于 iOS 本地通知的问题

Posted

技术标签:

【中文标题】关于 iOS 本地通知的问题【英文标题】:Questions about Local notifications in iOS 【发布时间】:2015-03-25 16:27:57 【问题描述】:

我正在开发一个使用大量通知(远程、本地)的 ios 7、8 项目。我对本地通知有一些疑问。

我正在使用本地通知来安排闹钟或倒计时。据我所知,使用 NSTimer 并不是一个很好的选择,因为它在后台最多只有 10',如果应用程序进程被杀死,它就不再工作了。本地通知由 iOS 管理,但当应用程序不在前台时,我必须接受它的警报。没有什么能比得上无声本地通知(没有警报、声音或徽章的本地通知,尽管它在后台,但应用程序仍然知道它)。我说的对吗? 假设通知中心有一些简单的本地通知,由我们的应用程序安排。通常,当我点击通知以在我的应用程序中查看它时,其他人会一直存在,直到我们与他们互动。在某些我还没有弄清楚的情况下,所有其他通知都会从通知中心中删除。有没有人遇到这个并理解为什么? 我发现 iOS 中的交互式通知功能非常有限。我想更改定义的 UIMutableUserNotificationAction 按钮的标题并为其添加图像,就像我可以使用 UIButton 一样。所以问题是:是否可以自定义操作按钮的 UI?

感谢您的帮助!

【问题讨论】:

【参考方案1】:

很遗憾,使用本地通知的静默通知中没有对应关系。 通知中心可见通知的数量是用户决定的,用户可以在设置中决定设置不同的数量或决定不在通知中心显示它们。至于第一点没有。 第三点不清楚,你可以为远程设置你想要的图像,只需在payload中放入正确的名称,本地通知使用应用程序图标。

【讨论】:

感谢您的回答。这里有一些误解。我更新了我的问题。希望他们更清楚:)【参考方案2】:
    本地通知没有静默通知。用户必须点击通知才能打开您的应用。 我想相关的应用程序已经以编程方式删除了这些通知。否则,这些通知必须保留在通知中心。 您不能将图像添加到操作按钮,只能添加标题。

【讨论】:

【参考方案3】:

我尝试了两个多星期来做同样的事情。即使用户没有点击通知,我也必须在 2 小时后显示通知。但是重复功能在目标 C 中得到了很好的处理。我可以创建多个本地通知,但它也会违反 64 个通知的总数。苹果需要改进同样的。

【讨论】:

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

本地通知和推送通知

注册本地通知

iOS开发之本地推送接收到推送的方法

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

静默本地通知 IOS

iOS 本地通知测试