最近googleでプッシュツーデバイスサービスが導入されましたが、2.2以降しか利用できません。httpと一緒に作業しているときにAndroidバッテリー
私のアプリでも同様のシステムが必要ですが、制限を回避しようとしています。
問題はバッテリ寿命です。ユーザーはサーバー上の変更について直ちに通知を受ける必要があるため、バックグラウンド(標準のAndroidサービス)に存在するサービスを実装し、サーバーに更新を照会すると考えました。
もちろん、毎秒でもサーバーに照会すると、バッテリーと同様に多くの帯域幅が必要になるので、私の質問はこれです。サーバーが一定の期間応答を保持している? (彗星型のAjaxリクエストの背後にある考え方)このような
作品は:
- デバイスは、サーバーが要求を取得し、更新があるかどうかをチェックする、1分間のループに行く
- データ更新の要求を送信します各繰り返しで
- 更新がある場合、サーバーは更新で応答を返します。
- サービスがない場合、サービスは次の繰り返しに進みます。
- 分後、それは最終的にデータが応答Androidの他のそのような要求を発射(空またはデータを持つかどうかに関係なく)の後
- まだ利用できないことを応答を送信します。
これは間違いなく帯域幅の消費は少なくなりますが、バッテリーの消費量は少なくなりますか?
ありがとうございます。私はサンプルアプリケーションを書くことを考えていましたが、私は近い将来それを可能にします。 リクエストについて。 http://someserver.com/getdataのような単純なリクエストです。 その後、デバイスは応答を待っています。データが利用可能であれば、応答は瞬時に、またはある時間(1分未満)それ以外の場合は、サーバー上で主要な処理が行われている間だけ待機します。 –