Android 网络判断

//判断是否有网络

 

private boolean isNetworkConnected() {
    ConnectivityManager connMgr = (ConnectivityManager)
            getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
    return (networkInfo != null && networkInfo.isConnected());
}

 

//一般再MainActivity中写入一下代码

//返回为true 是有网络的状态

//返回false  是没有网络的状态

boolean networkConnected = isNetworkConnected();

if (networkConnected){

    //判断有网络的情况
    //Toast.makeText(ShowActivity.this,"有网",Toast.LENGTH_SHORT).show();

}else{

    //如果判断没有网络,提示AlertLog去设置中打开网络
    startAlertDiaLog();

}

//如果是没有网络的状态 就引导用户 去设置页面打开网络

public void startAlertDiaLog(){

    AlertDialog.Builder alert = new AlertDialog.Builder(ShowActivity.this);

    alert.setTitle("说明");
    alert.setMessage("App没有查询到可用的网络,请去设置中打开");
    alert.setPositiveButton("启动设置", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

            startSetting();

        }
    });
    alert.setNegativeButton("暂不开启", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

        }
    });
    alert.create();
    alert.show();

}

 

整理的一些跳转的路径

 

1.   ACTION_ACCESSIBILITY_SETTINGS :    // 跳转系统的辅助功能界面
 
          Intent intent =  new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS);  
           startActivity(intent);  
 
2.    ACTION_ADD_ACCOUNT :               // 显示添加帐户创建一个新的帐户屏幕。【测试跳转到微信登录界面】   
 
          Intent intent =  new Intent(Settings.ACTION_ADD_ACCOUNT);  
           startActivity(intent);
 
3.   ACTION_AIRPLANE_MODE_SETTINGS:       // 飞行模式,无线网和网络设置界面
 
       Intent intent =  new Intent(Settings.ACTION_AIRPLANE_MODE_SETTINGS);  
       startActivity(intent);
 
        或者:
 
     ACTION_WIRELESS_SETTINGS  :      
 
                Intent intent =  new Intent(Settings.ACTION_WIFI_SETTINGS);  
                startActivity(intent);
 
4.    ACTION_APN_SETTINGS:                 //  跳转 APN设置界面
 
           Intent intent =  new Intent(Settings.ACTION_APN_SETTINGS);  
           startActivity(intent);
 
5.   【需要参数】 ACTION_APPLICATION_DETAILS_SETTINGS:   // 根据包名跳转到系统自带的应用程序信息界面   
 
               Uri packageURI = Uri.parse("package:" + "com.tencent.WBlog");
 Intent intent =new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS,packageURI);  
               startActivity(intent);
 
6.    ACTION_APPLICATION_DEVELOPMENT_SETTINGS :  // 跳转开发人员选项界面
 
           Intent intent =  new Intent(Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS);  
           startActivity(intent);
 

 


7.    ACTION_APPLICATION_SETTINGS :      // 跳转应用程序列表界面

//打开设置页面

public void startSetting(){

    Intent intent = new Intent(Settings.ACTION_AIRPLANE_MODE_SETTINGS);
    startActivity(intent); // 打开系统设置界面

}

//因为去设置页面需要一个返回的过程 所以上代码

 

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == 10  && resultCode == RESULT_OK){

        boolean networkConnected = isNetworkConnected();

        if (networkConnected){

            Toast.makeText(ShowActivity.this,"感谢您的理解",Toast.LENGTH_SHORT).show();

        }else{

            Toast.makeText(ShowActivity.this,"亲,你不乖咯,还没有可用的网络哦",Toast.LENGTH_SHORT).show();
        }

    }

}

 

到这里呢,一个网络判断的流程就到这里了  

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值