2010-08-09 20 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

相關問題