新填类:
public class NetUtils { public static boolean isNetworkAvailable(Activity activity) { Context context = activity.getApplicationContext(); // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理) ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivityManager == null) { return false; } else { // 获取NetworkInfo对象 NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo(); if (networkInfo != null && networkInfo.length > 0) { for (int i = 0; i < networkInfo.length; i++) { System.out.println(i + "===状态===" + networkInfo[i].getState()); System.out.println(i + "===类型===" + networkInfo[i].getTypeName()); // 判断当前网络状态是否为连接状态 if (networkInfo[i].getState() == NetworkInfo.State.CONNECTED) { return true; } } } } return false; } }
主界面进行判断是否有网络 如果有则继续往下执行 如果没有则进行跳转到设置界面
if (NetUtils.isNetworkAvailable(MainActivity.this)) { Toast.makeText(getApplicationContext(), "网络正常", Toast.LENGTH_LONG).show(); }else { Toast.makeText(getApplicationContext(), "当前没有可用网络!请进入设置页面", Toast.LENGTH_LONG).show(); AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this); builder.setTitle("提示"); builder.setMessage("是否跳转到设置界面"); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { Intent intent = new Intent(Settings.ACTION_WIFI_SETTINGS); startActivity(intent); } }); builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { } }); builder.show(); }