今日SDKマネージャーにアクセスしたところ、GoogleがGCMアップデートバージョン3をリリースしていることがわかりました。アップデート3の新機能を見つけようとしましたが、Googleがリリースしたドキュメントを入手できませんでした。
私の質問
- GCMアップデートバージョン3の新機能は何ですか?アップデートのドキュメントを見つけることができますか?
- サーバー側だけでなく、クライアントでも古いjarを新しいjarに置き換える必要がありますか?
今日SDKマネージャーにアクセスしたところ、GoogleがGCMアップデートバージョン3をリリースしていることがわかりました。アップデート3の新機能を見つけようとしましたが、Googleがリリースしたドキュメントを入手できませんでした。
私の質問
幸いなことに、私はまだ GCM v1 を持っているので、v1 と v3 の間で簡単なフォルダーの差分を作成しました。いくつかのマイナーなリファクタリングに加えて、追加された新機能は次のとおりです。
isRegisteredOnServer() メソッドに寿命があり、デフォルトで 7 日に設定されています。そのため、登録のためにサンプル クライアントに従うと、アプリはその registration_id を更新のためにサーバーに 7 日ごとに投稿します。
もちろん、これは新しい getRegisterOnServerLifespan() および setRegisterOnServerLifespan() メソッドを使用して変更できます。
私が気付いた興味深いリファクタリングの 1 つは、登録用に複数の SENDER_ID をサポートするためにコードが全体的に変更されていることです。たとえば、以前はこれを使用して登録していました。
GCMRegistrar.internalRegister(context, mSenderId); // mSenderId is a String
今、彼らはこれを使用しています:
GCMRegistrar.internalRegister(context, senderIds); // senderIds is a String array
複数の SENDER_ID の登録については、公式ドキュメントでは何も言及されていないと思います。また、登録が許可されていても、登録結果を受け取った時点で、どの registration_id がどの SENDER_ID に属しているかを識別する方法はありません。