Android Wifi 的状态广播

来源:互联网 发布:搭建大数据分析平台 编辑:程序博客网 时间:2024/05/17 02:55

wifi的广播状态一共有五种

    public static final int WIFI_STATE_DISABLING = 0;    public static final int WIFI_STATE_DISABLED = 1;    public static final int WIFI_STATE_ENABLING = 2;    public static final int WIFI_STATE_ENABLED = 3;    public static final int WIFI_STATE_UNKNOWN = 4;

当我们打开wifi的开关的时候wifi经历了两个状态
WIFI_STATE_ENABLING–>>WIFI_STATE_ENABLED
只有在wifi状态是WIFI_STATE_ENABLED的时候,wifi才算完全打开 可以去连接热点了
当我们关闭wifi的时候wifi又会经历两种状态
WIFI_STATE_DISABLING–>>WIFI_STATE_DISABLED

我们监听wifi状态的时候 需要注册一个广播来监听

@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        IntentFilter filter = new IntentFilter(                WifiManager.WIFI_STATE_CHANGED_ACTION);        BroadcastReceiver receiver = new MyReceiver();        registerReceiver(receiver, filter);    }
class MyReceiver extends BroadcastReceiver {        @Override        public void onReceive(Context context, Intent intent) {            if (WifiManager.WIFI_STATE_CHANGED_ACTION                    .equals(intent.getAction())) {// 这个监听wifi的打开与关闭                int wifiState = intent.getIntExtra(                        WifiManager.EXTRA_WIFI_STATE, 0);                Log.e("WIFI状态", "wifiState==" + wifiState);                switch (wifiState) {                case WifiManager.WIFI_STATE_DISABLED:                    break;                case WifiManager.WIFI_STATE_DISABLING:                    break;                case WifiManager.WIFI_STATE_ENABLED:                    break;                case WifiManager.WIFI_STATE_ENABLING:                    break;                case WifiManager.WIFI_STATE_UNKNOWN:                    break;                }            }        }    }
0 0
原创粉丝点击