「はじめに」ページで説明されているようにアプリにGCMを実装し、実装を容易にするためにgcm.jarおよびgcm-server.jarヘルパーライブラリを使用しました。
しかし、私はGCMで何かを誤解したと思います。私が望むことを達成できなかったからです。
registerIdだけでなく別のキー情報でデバイスを登録したい。たとえば、これは天気予報アプリケーションであり、ユーザーは1つ以上の都市に関する通知を受け取りたい場合があります。これを実現するには、サーバーは他のソースから天気情報を取得し、関連する都市で変更があった場合に登録済みのデバイスにプッシュバックするための都市名または郵便番号を必要とします。
ユーザーが特定の何か(たとえば都市)に関する通知を受け取るように言ったときにデバイスを登録します。
ただしGCMRegistrar.register
、メソッドは2つの引数のみを取ります。1つはコンテキスト用で、もう1つはsenderID用です。
追加のパラメータをアプリケーションサーバーに送信するにはどうすればよいですか?
編集:GCMIntentServiceとonRegisteredメソッドを実装しました。サーバーを直接呼び出すことで、ここから追加情報を送信できます。しかし、onRegisteredメソッドが呼び出されると、追加情報が失われます。