2

我目前使用GCM將通知推送到我的應用的iOS和Android版本。GCM - 推送通知的iOS客戶端控制?

使用Android,我能夠處理從服務器客戶端發送的任何消息,然後決定我要如何處理它。例如,我可以收到請求,檢查客戶端是否啓用了推送通知,然後從客戶端發送推送通知。

問題是:是否有客戶端發送iOS推送通知的方法,類似於Android?

回答

1

要接收消息,iOS應用程序需要註冊Apple推送通知服務(APN)和GCM連接服務器。當客戶端應用程序向GCM註冊時,它會收到一個註冊令牌,然後它必須發送給應用程序服務器(APNs設備令牌不會發送到服務器)。客戶端應用程序必須存儲一個布爾值,該值指示註冊令牌是否已發送到服務器。

關於如何在IOS上設置客戶端應用程序,您可以按照此documentation

基於此SO question,實現APNs和GCM非常簡單。您可以按照此步驟

  • 當的APN(iOS設備)和GCM(Android設備)註冊了蘋果和谷歌服務器上的推送通知它生成每個設備的唯一標記。

  • 之後,您需要使用設備ID或用戶標識(設備的服務器上的唯一標識)和設備的操作系統來保存該設備標記。

IOS設備發送服務器上該信息(後端),您可以使用此JSON格式 - {"token":"abcdedfgehik2bd3d3ff3sffssdff","os":"iOS","userid":34}

這是它是如何工作的。

  1. 您像往常一樣從APN請求設備令牌。
  2. 您需要使用提供的API將該令牌發送到GCM服務。
  3. 然後GCM發回另一個令牌。
  4. 然後將該令牌發送到應用服務器。
  5. 應用服務器可以使用該令牌發送通知。

另請嘗試檢查this瞭解更多信息。