How to be notified on wifi network status change?

前端 未结 4 1639
醉梦人生
醉梦人生 2020-11-29 02:16

I am writing an app that connects to a telnet server via wifi. I have a service that manages the socket connection. It all works fine, but when the phone sleeps it disconn

4条回答
  •  青春惊慌失措
    2020-11-29 03:00

    *set these permissions in your manifest

    
    
    

    *Register a BroadcastReceiver for these actions filters in your manifest

     
                
                    
                    
                
            
    

    *Define your BroadcastReceiver´s implementation

    public class myBroadcastReceiver extends BroadcastReceiver {
    
        @Override
        public void onReceive(Context context, Intent intent) {
    
            WifiManager wifiManager = (WifiManager) context
                    .getSystemService(Context.WIFI_SERVICE);
    
            NetworkInfo networkInfo = intent
                    .getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
            if (networkInfo != null) {
                Log.d(AppConstants.TAG, "Type : " + networkInfo.getType()
                        + "State : " + networkInfo.getState());
    
    
    if (networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
    
       //get the different network states
    if (networkInfo.getState() == NetworkInfo.State.CONNECTING || networkInfo.getState() ==        NetworkInfo.State.CONNECTED) {
        }
                            }
                          }
    
                        }
                    }
    

提交回复
热议问题