2011-01-18 8 views
0

インターネット接続があるかどうか常にアプリケーションが常にチェックする方法を知っている人がいますか?第2に、インターネット接続が機能を呼び出すかどうかをチェックします。分など?一定のライブアップデート

答えて

1

ConnectivityManagerを使用してネットワーク接続を確認してください。

ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); 
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); 

if (networkInfo.isConnected()) 
{ 
    // do something 
} 

は、10分ごとにデバイスをウェイク AlarmManagerが提供するAPIを使用します。私はAlarmManagerを使った実践的な経験はありません。これを参照してください、かなり包括的だと思われます

これは、デバイスをスリープ状態にするとバッテリ寿命に顕著な影響を与えることに注意してください。

+0

私は接続マネージャーがネットワークをチェックするのを知っていますが、10分ごとにこれを行う方法はわかりません。どのコードを使用しますか.thansks – Beginner

+0

私はリンクを追加しました私はそれを自分で使用する機会を持っていないので、AlarmManagerを使用することを学ぶためのかなり良いリソースに。 – WorkerThread

+0

getActiveNetworkInfo()は、RemoteExceptionがある場合はnullを返します。したがって、isConnected()を呼び出す前に、(networkInfo!= null)かどうかを確認してください。 – Nicholi

関連する問題