WifiManager 实现Wifi快捷开关

wifi快捷快捷开关

wifi快捷快捷开关实现起开比Gprs开关简单,WifiManager有开放的API,想了解Gprs快捷开关的同学看这篇文章:http://blog.csdn.net/u013045971/article/details/41750977

获取wifi状态:

	public static boolean isWifiEnable(Context context) {
		WifiManager wifiManager = (WifiManager) context
				.getSystemService(Context.WIFI_SERVICE);
		return wifiManager.isWifiEnabled();
	}


设置wifi状态:

public static void setWifiEnable(Context context, boolean enable) {
		WifiManager wifiManager = (WifiManager) context
				.getSystemService(Context.WIFI_SERVICE);
		wifiManager.setWifiEnabled(enable);
	}


那么跟Gprs开关一样,我们也需要根据监听一个标识去改变视图的状态(比如别的程序改变了wifi,你自己的视图是不是也要跟着变化呢?),之前的Gprs是通过监听database来改变视图的状态,而wifi就不需要那么麻烦了,直接通过广播来监听状态。直接在接收器中改变你的视图状态就ok了。

如下:

class ChangedReceiver extends BroadcastReceiver {

		@Override
		public void onReceive(Context context, Intent intent) {
			String action = intent.getAction();		

			if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
				int e = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, 0);
				//这里的广播是接受到wifi的开和关状态
				//WIFI_STATE_DISABLED        已关闭
				//WIFI_STATE_DISABLING       正在关闭
				//WIFI_STATE_ENABLED         已打开
				//WIFI_STATE_ENABLING        正在打开
				//WIFI_STATE_UNKNOWN         未知
				switch (e) {
				case WifiManager.WIFI_STATE_DISABLED:
					Log.i("ABC", "_DISABLED");
					break;
				case WifiManager.WIFI_STATE_DISABLING:
					Log.i("ABC", "_DISABLING");
					break;
				case WifiManager.WIFI_STATE_ENABLED:
					Log.i("ABC", "_ENABLED");
					break;
				case WifiManager.WIFI_STATE_ENABLING:
					Log.i("ABC", "_ENABLING");
					break;
				case WifiManager.WIFI_STATE_UNKNOWN:
					Log.i("ABC", "_UNKNOWN");
					break;
				default:
					break;
				}
			}
			if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
				//这里的广播是表示wifi链接到一个正常的路由    链接到正常的路由之后才可以正常的获取wifi的   名称 ,IP,信号强度之类的参数
				WifiManager manager = (WifiManager) context
						.getSystemService(Context.WIFI_SERVICE);
				Log.i("ABC", "_ok" + manager.getConnectionInfo().getSSID());
				
			}

		}
	}



 

posted @ 2014-12-09 13:34  顾明伟  阅读(565)  评论(0编辑  收藏  举报