-1

WiFi がオフラインになるたびにアプリケーションに通知を送信する必要があります。

WiFi接続が変わるたびに通知するようにしました。しかし、オフラインになったときにのみ通知する必要があります。

また、(アプリケーションの)起動時に通知します。

私の質問は、WiFi がオフラインになったときにのみ通知するようにコードを変更するにはどうすればよいですか? オフライン、オンライン、起動時に通知が表示されるようになりました。

コード:

 public class MainActivity extends Activity { 
 @Override
 protected void onCreate(Bundle savedInstanceState) {        

 super.onCreate(savedInstanceState);  
 this.registerReceiver(this.mConnReceiver,
    new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
 setContentView(R.layout.activity_main);
 }

 private BroadcastReceiver mConnReceiver = new BroadcastReceiver() {
 public void onReceive(Context context, Intent intent) {
 boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
 String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON);
 boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false);

 NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
 NetworkInfo otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO);

 if(currentNetworkInfo.isConnected()){
 } 
 else{showNotification();}

 }
 };
4

2 に答える 2

0

これを使用して接続InetAddress.isReachableを確認します。接続がある場合、メソッドは true を返します。それ以外の場合は false

于 2013-10-16T11:49:04.800 に答える