2010-08-09 80 views
5

我正在潜心研究iOS开发,并构建自己的闹钟应用程序以熟悉平台和SDK。我目前学习的其中一个API是本地通知API,我认为它与苹果公司用于在其时钟应用中实现警报的API相同。如何在他们的Clock应用程序中实现Apple的“Snooze”功能?

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

  1. 当用户点击“暂停”按钮,你怎么认为苹果重新安排报警的本地通知,而无需启动时钟应用?您是否认为他们正在使用自己的私有API来规避只允许两种选择的本地通知的局限性?或者你认为他们推出的时钟应用程序重新安排本地通知,他们只是不显示应用程序启动和退出?

  2. 该文档显示本地通知的“alertAction”属性是要显示在警告框的右侧按钮和锁定屏幕的滑动条上的文本。然而,在苹果时钟应用中,“贪睡”文本是警告框中的左侧按钮,也不是滑动条文本。为什么这是倒退?

非常感谢您的想法!

+0

为什么你会认为苹果正在使用本地通知?他们实际上正在使用一些未公开的重新计划小睡,因为现在我们不能安排本地通知没有应用程序重新打开 – Daniel 2010-08-09 15:04:14

+1

嗯,我想我认为,因为这是功能最相似的功能。 – BeachRunnerFred 2010-08-09 15:11:48

+2

@丹尼尔 - 除非你在苹果公司工作,否则你就是在做假设:) – 2010-08-09 15:13:36

回答

5

本地通知API没有任何机制来执行您想要的操作。闹钟应用几乎肯定不会使用任何本地通知的基础设施,它早于他们。即使它是由本地通知提供的一些基础设施的因素,它肯定不会使用公共API。

您应该file一个请求添加此功能的错误。

+0

我'我把这个提交为bug#9381428。好主意! – Moshe 2011-05-04 12:54:17

+0

我差不多一年后再次将它提交为bug#11115712: - \ – arya 2012-03-25 01:25:03

相关问题