网络判断 创建工具类
public class NetWorkUtil {
//判断网络状态是否可用
public static boolean isConn(Context context){
boolean flag=false;
//获取网络连接的管理
ConnectivityManager manager =(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
//拿到网络信息
NetworkInfo info = manager.getActiveNetworkInfo();
if (info!=null){
flag=info.isAvailable();
}
return flag;
}
//如果没有网络,弹出对话框,选择是否设置网络
public static void showNoNetWorkDlg(final Context context){
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setIcon(R.mipmap.ic_launcher); //
builder.setTitle("警告");
builder.setMessage("当前无网络,是否去设置");
builder.setPositiveButton("设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// 跳转到系统的网络设置界面
Intent intent = null;
// 先判断当前系统版本
if(android.os.Build.VERSION.SDK_INT > 10){ // 3.0以上
intent = new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS);
}else{
intent = new Intent();
intent.setClassName("com.android.settings", "com.android.settings.WirelessSettings");
}
context.startActivity(intent);
}
});
builder.setNegativeButton("取消",null);
builder.show();
}
}
在MainActivity中写判断
//2.进入页面之后判断网络状态是否可用
boolean conn = NetWorkUtil.isConn(MainActivity.this);
if (conn) {//有网络;页面可用时使用网络加载数据
//加载数据
// 实例化AsyncTask的对象并重写其中4个方法
MyTask task = new MyTask();
task.execute("https://www.toutiao.com/api/pc/focus/");
} else {//当页面不可用时弹出吐司提示
NetWorkUtil.showNoNetWorkDlg(MainActivity.this);
}