Amazon SNS + Google Cloud Messaging + Android

AWS SDK for JavaAndroid への Push 通知を考えている皆様!


iPhone アプリしか作ったことがない人にとってはかなりの衝撃の事実だと思いますが、Android では通知のためのデバイストークンがころころ変わります。

  • バージョンアップ
  • 再ンストール
  • その他色々

これらを契機にして registration id が変わりまくります。
Android への通知は Google Cloud Messaging を使うと思いますが、Amazon SNS と組み合わせて使用することも多いと思います。
そんなときには!

Amazon SNS のモバイルトークン管理についてのベストプラクティス
この記事に目を通した方がよいです(クラスメソッド様、いつも良記事お世話になっております)。
もっと言うと、この記事の元となった記事
Mobile token management with Amazon SNS


ポイントは createEndpoint メソッドです。
このように実装し、トークンを新しい物に更新していきましょう。
わざわざ正規表現でひっかける必要があるのであれば、例外クラスのプロパティとして組み込んでもらいたいところですが・・・
通知機能を一から悩んで作りこむよりも、まずこの記事を参考に実装した方がうまくいくこと間違い無しです!


Google Cloud Messaging が使用できない市場(国)もあるので、国際化対応する際には更に注意です