簡體   English   中英

iOS6中的自動遞增推送通知徽章

[英]Auto Increment Push Notification Badge in iOS6

我從服務器獲得推送通知。 服務器始終在有效負載中發送badge = 1。

服務器端開發人員對此一無所知。 任何人都可以告訴我服務器端開發人員如何處理徽章計數值,以便iOS應用程序獲得更新的徽章計數(自動遞增徽章計數)?

  1. 我可以在iOS應用程序端自動增加它嗎? 如果是這樣,怎么樣?

  2. 如果不是那么服務器開發人員如何處理服務器上的徽章計數? 我看到幾個鏈接告訴我服務器端應該處理徽章計數。

任何樣本或參考都會有所幫助。

我認為你不能在iOS應用程序方面做到這一點。 它必須來自服務器。

我所做的:

  • 服務器在每個用戶的數據庫中存儲應用程序徽章編號。
  • 當服務器發送通知時,它會將該數字增加1。
  • 您還需要創建一個Web服務來重置您在啟動應用程序時調用的徽章編號。

您可以使用該行更改應用程序中的徽章編號(例如,在applicationDidBecomeActive中):

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    application.applicationIconBadgeNumber = 0;
}

希望這有幫助。

徽章計數是可以從服務器的Apple推送通知有效負載中發送的參數之一。 徽章計數通常反映服務器知道的某些新數據(例如未讀電子郵件)的數量,並且想要向應用程序用戶發出警告。 因此,它應該在服務器端完成。 應更改當前始終在徽章計數中發送1的代碼以選擇正確的計數。

您可以在客戶端中執行此操作(每當推送通知到達時將其遞增一次),但這不是一個好主意,因為無法保證推送通知到達。 此外,只有通知除了徽章編號之外還包含警報,並且用戶點擊通知以打開應用程序(否則,如果通知數據尚未運行,您的應用程序將無法獲取通知數據) 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM