系统服务对应的权限记得在清单文件注册
//检测网络开关状态
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
//检测WiFi开关状态
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
- 检测网络是否正常(就是网开没开)
* 直接吧代码copy就好了,然后调用isNetWorkContent方法*
//写的是例子,给不懂的人看
if (isNetWorkContent(MainActivity.this) == true) {
Toast.makeText(MainActivity.this, "当前网络通畅", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(MainActivity.this, "当前无网络", Toast.LENGTH_LONG).show();
}
public boolean isNetWorkContent(Context context) {
if (context != null) {
ConnectivityManager manager = (ConnectivityManager) context.getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info = manager.getActiveNetworkInfo();
if (info != null) {
return info.isAvailable();
}
}
return false;
}
上面的代码如果copy都不会,那就没办法了
- 开关WiFi
如果不知道WiFi是否开启,通过调用该方法就可以知道。具体项目使用请根据实际情况修改
WifiManager manager = (WifiManager) MainActivity.this.getSystemService(WIFI_SERVICE);
//如果WiFi开启就关闭并弹出Toast提示已关闭
if (manager.isWifiEnabled()) {
manager.setWifiEnabled(false);
Toast.makeText(MainActivity.this, "WiFi已关闭", Toast.LENGTH_LONG).show();
} else {
//如果WiFi关闭,开启WiFi
manager.setWifiEnabled(true);
Toast.makeText(MainActivity.this, "WiFi打开", Toast.LENGTH_LONG).show();
}