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

时间:2010-08-09 14:54:53

标签: iphone ipad ios clock localnotification

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

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

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

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

  3. 非常感谢你的想法!

1 个答案:

答案 0 :(得分:5)

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

您应file要求添加此功能的错误。