- if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(action)) {//在此监听wifi有无
- int wifiState = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, 0);
- switch (wifiState) {
- case WifiManager.WIFI_STATE_DISABLED:
- updateWifiStatus(R.drawable.wifi_disable);
- Toast.makeText(mContext, R.string.wifi_disable,
- Toast.LENGTH_LONG).show();
- break;
- case WifiManager.WIFI_STATE_DISABLING:
- break;
- case WifiManager.WIFI_STATE_ENABLED:
- updateWifiStatus(R.drawable.wifi_enable);
- Toast.makeText(mContext, R.string.wifi_enable,
- Toast.LENGTH_LONG).show();
- break;
- case WifiManager.WIFI_STATE_ENABLING:
- break;
- case WifiManager.WIFI_STATE_UNKNOWN:
- break;
- }
- }
- //另外一种方式
- mWifiMng = (WifiManager) mContext
- .getSystemService(mContext.WIFI_SERVICE);
- switch (mWifiMng.getWifiState()) {
- case WifiManager.WIFI_STATE_DISABLED:
- updateWifiStatus(R.drawable.wifi_disable);
- Toast.makeText(mContext, R.string.wifi_disable,
- Toast.LENGTH_LONG).show();
- break;
- case WifiManager.WIFI_STATE_DISABLING:
- break;
- case WifiManager.WIFI_STATE_ENABLED:
- updateWifiStatus(R.drawable.wifi_enable);
- Toast.makeText(mContext, R.string.wifi_enable,
- Toast.LENGTH_LONG).show();
- break;
- case WifiManager.WIFI_STATE_ENABLING:
- break;
- case WifiManager.WIFI_STATE_UNKNOWN:
- break;
- }
- if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)) {
- Parcelable parcelableExtra = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
- if (null != parcelableExtra) {
- NetworkInfo networkInfo = (NetworkInfo) parcelableExtra;
- boolean isConnected = networkInfo.isAvailable();
- updateNetworkStatus();
- }
- }
最后要在AndroidMainfest.xml文件中添加权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />