2014-06-24 69 views
0

在我的數據庫中,我將傳遞的消息數存儲在表字段中。對於發送給特定設備的每條消息,我都會增加此值。iOS管理服務器端的徽章

當設備收到帶有徽章設置的payloa時,它會在應用程序圖標上顯示紅色圓圈。

這一切都好,但是,當我啓動應用程序(從推或直接從圖標),我怎麼可以通知服務器已重置計數器?

而且,如果應用程序處於活動狀態,我也必須通知服務器也不要遞增徽章(因爲用戶正在實時閱讀)。

爲了解決這個問題,我必須回收服務器以獲得每次推送的服務?

回答

1

如果您希望服務器知道用戶何時查看新數據(通過啓動應用程序或已經將應用程序置於前臺),則唯一的方法就是您要回調的回調函數每次啓動應用程序時(從通知或圖標)啓動應用程序或在啓動時收到推送通知。

如果應用程序處於活動狀態,則可以在處理推送通知時立即刪除徽章(以便用戶永遠不會看到它)。你可以撥打電話app.applicationIconBadgeNumber = 0application:didReceiveRemoteNotification:

+0

謝謝,所以它是我懷疑的。這是沒有問題的,因爲我已經有了一個WebService,我將添加另一個刪除推送方法,使用應用程序名稱+設備令牌調用它。我認爲這對夫婦以獨特的方式識別設備。 – Mistre83