OS:Android
与えられた:ユーザーは、更新などを受信するためにアプリのサーバーに接続したままにしておきたいと述べています。
目標:アプリがバックグラウンド状態の場合でも、ユーザーがアプリのサーバーに接続できるようにすること。
質問:1つの問題は、ネットワークからの切断が時折発生することです。ユーザーがデータネットワーク接続を失い(2G、3G、WiFiが失われた)、後で接続を回復した場合、アプリは接続されないままになります。私は現在PhoneStateListener
、さまざまなネットワークの変更を検出し、必要に応じてサーバーとの接続を再開するために、を利用しようとしています。私のNexusOne(2.1)では、リスナーが最初に登録されたとき以外は呼び出されませんが、後で呼び出されることはonSignalStrengthsChanged
ありません。onDataConnectionStateChanged
リスナーはサービス内に登録されているため、サービスが存続している限り継続的にリッスンします(この質問では、リスナーは「永遠に」と見なすことができます)。他の誰かがデータ接続の状態を聞くことに問題がありましたか?
onServiceStateChanged
これまでで最も信頼できるようですが、他のリスナーでも成功したかどうかを知りたいと思いました。