3

GCMの方がエネルギー消費量が少ないと聞きましたが、GCMはどのようにしてバッテリー寿命を延ばすのですか?GCMとの違いは何ですか?

サーバーは何かを取得するとアプリにメッセージを送信すると言われているので、アプリは毎回サーバーをチェックする必要はありません。

しかし今、アプリはまだそのメッセージをチェックする必要がありますか?

4

1 に答える 1

8

それが機能する方法は、GCMがない場合、ソケットを存続させるために、アプリがサーバーに対してソケットを開いて5分ごとにpingを実行する必要があるということです。別のオプションは、 5分ごとにサーバーを使用して、フェッチする新しいものがあるかどうかを確認します。

GCMでは、メッセージを取得するためにすでに実行されている1つの統合プロセスがあります。これで、アプリはブロードキャストリスナーでサブスクライブするだけで、そのGCMプロセスでアプリへのメッセージがあった場合、そのメッセージはアプリにブロードキャストされ、その段階で必要なものを何でも実行できます。

これにより、独自のサービスを実行するのではなく、OS上の既存のGCMサービスに便乗するだけでバッテリーを節約でき、バッテリーの使用量が少なくなります。

于 2012-08-25T19:19:12.077 に答える