2016-04-04 112 views
0

我很好奇,如果在iPhone上(或通過iOS模擬器)有一些方法來看看「推送通知」排隊?查看iOS通知隊列?

我搜索了一下,找到一些關於如何完成推送通知的信息,但不知道它們是如何排隊的。

+1

推送通知由後端發送,它們不在iPhone上排隊。你在談論本地通知嗎?如果是這樣,''[[UIApplication sharedApplication] scheduledLocalNotifications]'應該給你一個包含'UILocalNotification'列表的NSArray'。 –

+0

@AlejandroIvána)從遠程推送進來時排隊 - b)本地推送排隊等候遞送,然後當他們進來時。不是說它對操作有幫助:D –

+1

@ Daij-Djan啊當然是,但是如果應用程序被打開,它會立即傳送(使隊列對該特定應用程序毫無意義)。如果應用程序已關閉,並且代碼未運行,則無法在通知中心捕獲通知隊列。所以最好的辦法是在後端有一個通知隊列。有沒有其他方式我錯過了? –

回答

2

不,這是不可能的。

雖然要達到這樣的目的,您可以發送靜默推送通知到設備以啓動內容下載處理程序。

該處理程序可以查詢您的API以獲取所有必要的數據並安排本地通知。詳情請參閱this programming guide here

如果例如應用程序的Web版本將信息標記爲已讀,您也可以使用此機制從後臺移除過時的通知。

EDIT

模擬器是不能夠在所有的處理推送通知。

+0

嗨,只是好奇。 Apple允許使用推送通知來觸發背景模式嗎? –

+0

閱讀鏈接。它正式記錄。另外,看看Facebook,Facebook Messenger或WhatsApp(網絡)等應用。如果您在Web界面上閱讀消息,他們會從鎖定屏幕中刪除通知。就像iMessages –

+0

是的,你也可以通過無聲通知(將徽章設置爲'0')來實現。我問,因爲,例如,如果您的應用程序下載文件,並且您發送推送通知以開始下載,從而觸發後臺模式以實際下載數據,那麼您的應用程序可能會被拒絕(至少,這是我直到現在才瞭解的內容) )。我想我錯了。 –