android 检查网络是否可用,如果不可用弹出设置,让用户改变
2015-11-24 18:37
666 查看
/** * 校验网络,如果没有网络,返回true * * @return boolean */ @Override public boolean hasInternetConnected() { ConnectivityManager manager = (ConnectivityManager)context .getSystemService(Context.CONNECTIVITY_SERVICE); if (manager != null){ NetworkInfo info = manager.getActiveNetworkInfo(); if(info !=null && info.isConnectedOrConnecting() ){ return true; } } openWirelessSet(); return false; }
/** * 弹出框 */ @Override public void openWirelessSet() { final AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("提示") .setMessage("请检查您的网络连接") .setPositiveButton("设置", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent( Settings.ACTION_WIRELESS_SETTINGS); context.startActivity(intent); } }) .setNegativeButton("关闭", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); }
上面这种方式是我自己用的可以的
/** * 检验网络连接是否可用 * * @return boolean */ @Override public boolean validateInternet() { ConnectivityManager manager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); if(manager != null){ NetworkInfo[] info =manager.getAllNetworkInfo(); if (info != null){ for (NetworkInfo networkInfo : info){ if (networkInfo.getState() == NetworkInfo.State.CONNECTED); return true; } } } return false; }
这种也看别人用过,不过今天自己测试了一下,自己明明把网络数据给关了,但返回的还是true,不知道为什么(PS:有大神来解释一下呗)
相关文章推荐
- 开源项目OkHttpPlus——支持GET、POST、UI线程回调、JSON格式解析、链式调用、文件上传下载
- libevent 和 libev 提高网络应用性能
- HttpClient和HttpURLConnection的区别
- android HttpURLConnection网络访问
- 计算机网络——数据链路层
- org.apache.http.conn.HttpHostConnectException: Connection to http://127.0.0.1(XXX) refused
- 【计算机网络】:tcp报文详解
- C语言 HTTP上传文件-利用libcurl库上传文件。
- 【计算机网络】:关于wireshark抓包实验的思考
- Volley网络请求的简单实用
- bzoj-3876 支线剧情
- 网络部分整理第一部分
- 网络安全,互联网金融,高并发
- httpd-vhosts.conf的配置
- 【计算机网络】:wireshark的过滤技巧
- HTTP协议中的1xx,2xx,3xx,4xx,5xx状态码分别表示什么,列举常见错误码及含义...
- HTTP协议中的1xx,2xx,3xx,4xx,5xx状态码分别表示什么,列举常见错误码及含义
- android中的http通讯----(5)客户端解析xml文件
- Ubuntu12.04在无网络环境下配置apt-get光盘源的简单方法
- CURL使用SSL证书访问HTTPS