Android之网络连接状态的判定
2015-12-12 20:25
671 查看
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限:
一、判断是否有网络连接:
二、判断WIFI网络是否可用:
三、判断MOBILE网络是否可用:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
一、判断是否有网络连接:
/** * 判断是否有网络连接 * @param context * @return */ public boolean isNetworkAvailable(Context context) { // 获取手机所有连接管理对象(包括对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++){ // 判断当前网络状态是否为连接状态 if (networkInfo[i].getState() == NetworkInfo.State.CONNECTED){ return true; } } } } return false; }
二、判断WIFI网络是否可用:
/** * 判断WIFI网络是否可用 * @param context * @return */ public boolean isWifiConnected(Context context) { if (context != null) { ConnectivityManager mConnectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mWiFiNetworkInfo = mConnectivityManager .getNetworkInfo(ConnectivityManager.TYPE_WIFI); if (mWiFiNetworkInfo != null) { return mWiFiNetworkInfo.isAvailable(); } } return false; }
三、判断MOBILE网络是否可用:
/** * 判断MOBILE网络是否可用 * @param context * @return */ public boolean isMobileConnected(Context context) { if (context != null) { ConnectivityManager mConnectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mMobileNetworkInfo = mConnectivityManager .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); if (mMobileNetworkInfo != null) { return mMobileNetworkInfo.isAvailable(); } } return false; }
相关文章推荐
- SpringMVC对HTTP报文体的处理
- Android之判断手机连接的网络类型是WIFI还是2G/3G/4G
- 神经网络
- (Fun)*((int*)*(int*)(&b)); http://bbs.csdn.net/topics/320008423
- 操作系统与网络实现 之十二
- 操作系统与网络实现 之十二
- 《TCP/IP作品详细解释2:实现》笔记--Radix树路由表
- 【拔苗计划】——TCP学习笔记之TCP三次握手四次断连
- C++虚函数及虚函数表解析http://www.cnblogs.com/chinazhangjie/archive/2012/07/11/2586535.html
- 用平常语言介绍神经网络
- Xcode7 HTTP不能正常使用的方法
- wmware虚拟网卡 VMnet8 VMnet1未识别网络解决方法
- Granafa http api使用
- 来这里看HTTP服务器状态代码定义
- 服务器架设笔记——httpd插件支持mysql字符集选择
- http://ahua186186.iteye.com/blog/1830180
- 认识RMI和代理模式
- 通信协议——Http、TCP、UDP
- android 让网络图片正常显示在Imageviw控件设计的大小之中
- 《TCP/IP详解 卷1:协议》 读书笔记 第十五章 TFTP:简单文件传送协议