`
scliu0718
  • 浏览: 52194 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

Android中判断网络连接是否可用

 
阅读更多

一、判断网络连接是否可用

public static boolean isNetworkAvailable(Context context) {
		ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
		if (cm == null) {
		} else {
			// 如果仅仅是用来判断网络连接      
			// 则可以使用 cm.getActiveNetworkInfo().isAvailable();
			NetworkInfo[] info = cm.getAllNetworkInfo();
			if (info != null) {
				for (int i = 0; i < info.length; i++) {
					if (info[i].getState() == NetworkInfo.State.CONNECTED) {
						return true;
					}
				}
			}
		}
		return false;
	}


下面的不仅可以判断,如果没有开启网络的话,就进入到网络开启那个界面,具体代码如下:

protected boolean CheckNetwork() {
		// TODO Auto-generated method stub
		boolean flag = false;
		ConnectivityManager cwjManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
		if (cwjManager.getActiveNetworkInfo() != null)
			flag = cwjManager.getActiveNetworkInfo().isAvailable();
		if (!flag) {
			Builder b = new AlertDialog.Builder(this).setTitle("没有可用的网络").setMessage("请开启GPRS或WIFI网路连接");
			b.setPositiveButton("确定", new DialogInterface.OnClickListener() {
				public void onClick(DialogInterface dialog, int which) {
					// TODO Auto-generated method stub
					Intent mIntent = new Intent("/");
					ComponentName comp = new ComponentName("com.android.settings", "com.android.settings.WirelessSettings");
					mIntent.setComponent(comp);
					mIntent.setAction("android.intent.action.VIEW");
					startActivity(mIntent);
				}
			}).setNegativeButton("取消", new DialogInterface.OnClickListener() {
				public void onClick(DialogInterface dialog, int which) {
					// TODO Auto-generated method stub dialog.cancel();
				}
			}).create();
			b.show();
		}
		return flag;
	}


用的时候可以这样用:
if(!CheckNetwork()) return;

二、判断GPS是否打开

  public static boolean isGpsEnabled(Context context) {   
        LocationManager lm = ((LocationManager) context   
                .getSystemService(Context.LOCATION_SERVICE));   
        List<String> accessibleProviders = lm.getProviders(true);   
        return accessibleProviders != null && accessibleProviders.size() > 0;   
    } 

三、判断WIFI是否打开

复制代码
 public static boolean isWifiEnabled(Context context) {   
        ConnectivityManager mgrConn = (ConnectivityManager) context   
                .getSystemService(Context.CONNECTIVITY_SERVICE);   
        TelephonyManager mgrTel = (TelephonyManager) context   
                .getSystemService(Context.TELEPHONY_SERVICE);   
        return ((mgrConn.getActiveNetworkInfo() != null && mgrConn   
                .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel   
                .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);   
    } 
复制代码

四、判断是否是3G网络

复制代码
    public static boolean is3rd(Context context) {   
        ConnectivityManager cm = (ConnectivityManager) context   
                .getSystemService(Context.CONNECTIVITY_SERVICE);   
        NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
        if (networkINfo != null   
                && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {   
            return true;   
        }   
        return false;   
    }  
复制代码

五、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。

复制代码
  public static boolean isWifi(Context context) {   
            ConnectivityManager cm = (ConnectivityManager) context   
                    .getSystemService(Context.CONNECTIVITY_SERVICE);   
            NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
            if (networkINfo != null   
                    && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {   
                return true;   
            }   
            return false;   
        }
复制代码

分享到:
评论

相关推荐

    Android中判断网络连接是否可用的方法总结

    以下是关于在Android中判断网络连接是否可用的一些方法总结: 首先,我们可以使用`ConnectivityManager`来判断当前设备是否连接到WiFi。这个方法是通过获取`ConnectivityManager`服务并检查其`ActiveNetworkInfo`...

    Android中判断网络连接是否可用及监控网络状态

    以下是一些关键知识点,关于如何在Android中判断网络连接是否可用以及如何监控网络状态。 首先,要获取网络信息,必须在`AndroidManifest.xml`文件中声明相应的权限。这个权限允许你的应用访问网络状态,如Wi-Fi和...

    Android编程判断网络连接是否可用的方法

    本文实例讲述了Android编程判断网络连接是否可用的方法。分享给大家供大家参考,具体如下: 为了提高用户体验,我们在开发 android 应用的过程需要联网获取数据的时候我们首先要做的一步就是: 1.判断当前手机是否...

    仿QQ微信,Android开发中网络连接状态的判断(判断android设备是否有网络)

    仿QQ微信,Android开发中网络连接状态的判断(判断android设备是否有网络),详细了解请移步http://blog.csdn.net/zxc514257857/article/details/69219113

    android 判断网络是否可用与连接的网络是否能上网

    Android 中判断网络是否可用和连接的网络是否能上网是非常重要的,特别是在开发联网应用程序时。下面我们将详细介绍如何判断网络是否可用和连接的网络是否能上网。 一、获取网络状态 获取网络状态是判断网络是否...

    android判断网络端口是否可达

    下面将详细介绍如何通过Socket连接判断网络端口是否可达,并以Android为例进行讲解。 首先,了解Socket的基本概念。Socket是应用层与传输层之间的一个接口,它允许应用程序通过TCP/IP协议进行数据传输。在Java中,`...

    当前网络是否可用工具类

    Android用于判断当前网络是否真正可用,判断数据流量是否连通。

    android 判断是否有可用网络连接

    在Android开发中,判断设备是否具有可用的网络连接是一项基本且重要的功能,这涉及到对设备当前网络状态的检测,包括Wi-Fi和移动数据(如3G/4G/LTE)的连接情况。以下是对给定代码片段的深入解析与扩展,以更全面地...

    android判断网络连接

    这个“android判断网络连接”的demo提供了一个简洁且实用的方法来检测设备的网络状态,包括无网络连接、GPRS(2G)连接以及WiFi(3G/4G/5G)连接。以下是对这个知识点的详细说明: 1. **Android网络权限**: 在...

    android判断网络是否连接

    本文将深入探讨如何在Android应用中实现“android判断网络是否连接”的功能。 首先,我们需要了解Android系统中处理网络连接的两个主要组件:ConnectivityManager和服务状态监听。`ConnectivityManager`是Android...

    Android中判断应用运行时是否有网络连接并弹出对话框提示

    在`onCreate`方法中,我们首先检查网络是否可用,如果不可用,则调用`showNoInternetDialog`方法显示一个对话框,提示用户当前没有网络连接。在`showNoInternetDialog`方法中,我们创建了一个AlertDialog,设置了...

    Android apk下载文件的url链接,并且可以判断网络是否连接

    // 网络连接可用,执行下载操作 } else { // 没有网络连接,提示用户 } ``` 7. **安装APK**:下载完成后,使用`Intent`触发APK的安装流程。设置`Intent`的`ACTION_VIEW`,并添加`CATEGORY_LAUNCHER`和`FLAG_...

    android 腾讯定位并判断网络连接

    本文将深入讲解如何在Android应用中集成腾讯定位服务,并判断网络连接状态。 首先,我们需要在AndroidManifest.xml文件中添加必要的权限,包括网络访问权限和定位权限: ```xml &lt;uses-permission android:name=...

    android判断网络是否可用并且可以使用原生刷新控件进行刷新

    在Android开发中,判断网络是否可用以及实现实时刷新功能是非常常见的需求。本文将深入探讨如何在Android应用中实现这两个功能。 首先,我们要了解如何判断网络是否可用。在Android中,我们可以利用`...

    判断是否联网

    以下是一些关于Android中判断网络连接是否可用的关键知识点: 1. **ConnectivityManager**: 这是Android系统提供的一个接口,用于管理网络连接。我们可以使用它来获取当前网络的状态。首先,我们需要获取到`...

    安卓Android判断是否有可用的网络连接.rar

    这个压缩包文件"安卓Android判断是否有可用的网络连接.rar"提供了一个示例代码,用于检测Android设备的网络连通性。主要涉及到的技术点包括Android权限管理、网络状态检查以及HTTP请求的处理。 首先,Android系统对...

Global site tag (gtag.js) - Google Analytics