有时我们需要在APP中控制WIFI和数据连接的开关,在Android中,是有相应的接口可以实现这一功能的。
控制WIFI开关
控制WIFI开关需要使用WifiManager这一系统服务。首先我们通过代码获取到它:
WifiManager wifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
通过WifiManager提供的接口,我们就可以实现控制WIFI的开关——我们首先判断当前WIFI的状态,如果是打开状态,则调用接口关闭;反之如果当前是关闭状态,则调用接口打开:
if (wifiManager.isWifiEnabled()) {
wifiManager.setWifiEnabled(false);
} else {
wifiManager.setWifiEnabled(true);
}
编写代码之后,我们还需要在AndroidManifest中声明相应的权限才能使代码正确生效,否则会抛出 java.lang.SecurityException 异常。其中
isWifiEnabled接口需要申请 android.permission.ACCESS_WIFI_STATE 权限
setWifiEnabled接口需要申请android.permission.CHANGE_WIFI_STATE权限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<