如何在他们的Clock应用程序中实现Apple的"Snooze"功能?

Bea*_*red 5 iphone clock ipad ios localnotification

我正在深入iOS开发,正在构建自己的闹钟应用程序,以熟悉平台和SDK.我目前正在学习的其中一个API是Local Notifications API,我认为它与Apple在其Clock应用程序中用于实现警报的API相同.

我不明白的是他们如何实现他们的"贪睡"功能.据我了解,本地通知允许您向用户显示一个警报框,当您的应用程序未在前台运行时,该警告框最多有两个按钮,一个按钮用于解除警报,一个按钮用于将用户带到您的应用程序.然而,在Apple的Clock应用程序中,用户会看到一个带有两个按钮的警告框,一个用于关闭警报的按钮和一个用于"暂停"的按钮,并在不启动Clock应用程序的情况下重新安排警报.我的问题是......

  1. 当用户点击"暂停"按钮时,您如何认为Apple在不启动时钟应用程序的情况下重新安排警报的本地通知?您是否认为他们使用自己的私有API来规避仅允许两种选择的本地通知的限制?或者你认为他们正在启动时钟应用程序重新安排本地通知,他们只是不显示应用程序启动和退出?

  2. 文档说明本地通知的"alertAction"属性是警告框右侧按钮和锁定屏幕滑块上显示的文本.但是,在Apple的Clock应用程序中,"Snooze"文本是警告框中的左键,也不是Slider栏文本.为什么倒退?

非常感谢你的想法!

Lou*_*arg 5

本地通知API没有任何机制来执行您想要的操作.闹钟应用程序几乎肯定不会使用任何基础设施进行本地通知,它早于它们.即使将其考虑在本地通知提供的某些基础架构上,它肯定不会使用公共API.

您应该提交一个错误请求添加此功能.