今天谈谈wifi的控制问题,不过这个功能一般有需求才会使用。
首先使用wifi控制的话,需要一些权限,附上代码:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
CHANGE_NETWORK_STATE 允许修改网络状态的权限
CHANGE_WIFI_STATE 允许修改WIFI状态的权限
ACCESS_NETWORK_STATE 允许访问网络状态的权限
ACCESS_WIFI_STATE 允许访问WIFI状态的权限
以上权限是加在AndroidManifest.xml,这样子才能使用wifi的控制然后是如何控制的问题:
先附上代码:
public void onClick(View v) { wifiManager = (WifiManager)MainActivity.this.getSystemService(Context.WIFI_SERVICE); switch (v.getId()) { case R.id.btn_start: wifiManager.setWifiEnabled(true); break; case R.id.btn_stop: wifiManager.setWifiEnabled(false); break; } Log.i("juetion", "当前网络状态"+wifiManager.getWifiState()); Toast.makeText(MainActivity.this, "当前的wifi网卡状态:" + wifiManager.getWifiState(), Toast.LENGTH_SHORT).show(); }
以上代码中是相应按钮的点击事件。
里面的WifiManager,如其名就是wifi管理类。
其中一般用得最多的里面的方法有:
setWifiEnabled:这个是开启或关闭wifi的。
getWifiState:这个是获取wifi状态的。
以上是调用getWifiState会获取的状态结果。
附上代码:http://download.csdn.net/detail/juetion/6769639
今月今日的android学习回顾到此结束,谢谢观看。