web-dev-qa-db-ja.com

Androidでネットワーク接続ステータスを監視するにはどうすればよいですか?

サーバーからファイルをダウンロードしているサービスがあります。ダウンロードを開始する前に、ワイヤレスLAN経由でのみファイルをダウンロードするようにユーザーに警告します。

私の問題は、ネットワーク接続を失うとダウンロードが停止することです。ネットワーク接続の変更をリッスンする方法はありますか、それとも完全に失われた場合は?

29
Janusz

CONNECTIVITY_ACTION をリッスンします

これは サンプルコード のように見えます。これがスニペットです:

BroadcastReceiver networkStateReceiver = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.w("Network Listener", "Network Type Changed");
    }
};

IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);        
registerReceiver(networkStateReceiver, filter);
80
Pentium10