我正在尝试一键解决,我们可以使用此代码检查网络状态
ConnectivityManager ConnectionManager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo=ConnectionManager.getActiveNetworkInfo();
if(networkInfo != null && networkInfo.isConnected()==true )
{
// Toast.makeText(SplashScreen.this, "Network Available", Toast.LENGTH_LONG).show();
}
但是,如果网络不可用,那么我们可以编写代码(例如在单击对话框中一键授予权限)以在语法上一键启用移动数据或WiFi
要启用/禁用 wifi:
WifiManager wifiManager = (WifiManager)this.context.getSystemService(Context.WIFI_SERVICE);
wifiManager.setWifiEnabled(status);
您需要以下权限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
要启用数据,请参阅此处和此处。
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
return activeNetwork != null && activeNetwork.isConnectedOrConnecting();
}
在单击方法中运行此程序
if(NetworkUtils.isNetworkAvailable(getApplicationContext())
{
Toast.makeText(this, "Active Network",Toast.LENGHT_SHORT).show();
}
else{
Toast.makeText(this, "No Active Network", Toast.LENGHT_SHORT).show();
}