2011-04-26 46 views
4

我對APN有疑問。 如果應用程序當前未運行時收到多個通知,會發生什麼情況。 操作系統是否會逐一顯示警報[如果用戶繼續關閉警報] 或者如果用戶點擊任何「查看」操作,它將激活應用程序,如果是這樣,那麼警報的其他部分如何? 如果應用程序啓動,它會提供啓動應用程序的通知對象,還是我們可以訪問隊列中的所有通知警報。當我的應用程序收到多個推送通知時會發生什麼?

幫我解決一下,如果一個應用程序(沒有運行)收到超過1個通知,該怎麼辦?有可能的選項(「查看」 /「關閉」)

回答

2
  1. 如果在與設備上的幾毫秒的延遲相同的時間間隔收到警報,它會通過它的聲音通知多個警報,甚至可以看到所有這些警報一個接一個地彈出並消失,但最後或最近收到的警報將僅顯示給您,以便查看應用程序或關閉。

  2. 如果應用程序正在運行或通過單擊警報上的查看按鈕啓動,那麼要獲取其他警報以供查看,您必須在設備本身中處理它。操作系統默認情況下會忽略應用程序運行時發出的所有警報。您必須檢查應用程序運行時是否收到警報。

這可以通過使用UIApplication的委託方法來實現:

(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 

這一點,你需要實現。這會在應用程序運行時收到通知。

一旦實現上述方法,即使應用程序正在運行,每個警報都會彈出。在這種情況下,它不會啓動一個新的應用程序實例。它只會顯示彈出警報。即使你點擊查看,它也不會做任何事情。如果您希望在應用程序運行時單擊視圖後完成任何特定作業,則可以創建此新功能並告訴操作系統根據需要運行。

相關問題