2

我們正在開發一個發送推送通知的移動應用程序,我們希望使用Amazon SNS服務來完成此操作,並且我想確認我們如何計劃管理設備註冊和推送通知發送。使用Amazon SNS服務發送推送通知

據我瞭解:

在亞馬遜SNS有PlatformApplication的,我們指定,如果它的Android/iPhone等也對環境的概念(測試/生產,...)

然後, PlatformEndPoint的概念是「針對設備和移動應用程序」,因此,我想像每個下載和安裝應用程序的人都需要根據設備類型(android,apple)在適當的平臺中創建EndPoint,

我的問題是,當這個PlatformEndPoint應該創建時,每次人登錄到應用程序,我們應該刪除它每次他退出?

然後當創建PlatformEndPoint並且我需要發送推送通知給特定用戶(而不是每個人)時,我將使用Publish API和相應的TargetArn參數。

非常感謝您的意見和建議

+0

如果您希望將批處理消息發送到訂閱單個主題的所有設備,或者您想要將消息發送到單個終端,請您澄清一下嗎? – 2014-11-25 01:08:32

回答

2

所有你需要通過SNS儀表盤(或使用SDK)創建應用端點用手首先

這裏是您可以爲Apple(APNS-Sandbox)聲明測試環境的地方。其他環境沒有專門的測試環境。 (即Google),但鼓勵您創建測試和生產應用程序,即使它們將使用同一個Messaging Provider。

你可能最終有:

  1. 「蘋果分期」 與APNS沙盒
  2. 「蘋果生產」 與APNS

注意:您可以優化端點針對特定的設備類型。 「iPhone-分期」和/或「iPad的分期」等

: 一旦你的應用程序的端點,你需要有代碼在你的系統,它知道根據打哪個端點系統的環境。即開發和分期可能指向「蘋果分期」端點。生產可能指向「蘋果生產」。

: 每當用戶接受推送通知的對話框,你必須創建而這又是與應用程序的端點相關用戶的端點。

  1. 用戶對P.N.說是。
  2. 您的服務器收到手機從APNS,GMS等獲得的令牌。
  3. 您的服務器反過來使用Amazon的sdk創建端點。
  4. 就是這樣。

最後 當您要發送推送通知,你需要抓住用戶的ARN(或端點)和亞馬遜SDK使用publish方法。

錯誤處理

用戶終端得到自動失效,如果推送通知未成功發送。您需要決定如何處理它們以備將來通知。您可以利用Amazon SQS來處理這個問題,並且錯誤處理的實現可能會有所不同。

+0

任何教程鏈接? – Gattsu 2016-12-06 07:35:27