`

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;   
    }
//判断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;   
        }




转:http://www.cnblogs.com/codeworker/archive/2012/04/23/2467180.html
分享到:
评论

相关推荐

    Android 判断当前网络是否可用简单实例

    Android 判断当前网络是否可用简单实例 用户手机当前网络可用:WIFI、2G/3G网络,用户打开与不打开网络,和是否可以用是两码事。可以使用指的是:用户打开网络了并且可以连上互联网进行上网。 首页添加网络权限 ...

    android判断网络状态、网络运营商、网络类型

    在Android开发中,掌握如何判断网络状态、获取网络运营商以及识别网络类型是非常关键的技能,这对于构建具有网络功能的应用程序至关重要。以下将详细介绍这些知识点。 首先,**判断网络状态**是确保应用程序能够...

    android判断网络连接

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

    android 判断网络状态

    在Android开发中,判断网络状态是一项基础且重要的任务,它涉及到应用能否正常访问网络资源,如下载、上传数据或加载网页。本节将详细介绍如何在Android中检查网络连接的状态,包括移动网络(2G/3G/4G/5G)和Wi-Fi。...

    android判断网络的状态断开与否

    ### Android判断网络状态的方法 在Android开发中,经常需要检测设备当前的网络连接状态,以确保应用程序能够根据网络情况提供合适的服务或者提醒用户检查网络连接。本文将详细讲解如何通过编写一个`...

    Android 判断网络状态,并且在没有网络的时候,打开网络设置对话框

    以下是如何在Android应用中判断网络状态并在无网络时弹出网络设置对话框的详细步骤。 首先,你需要在AndroidManifest.xml文件中添加必要的权限,以便应用能够访问网络状态。这是通过添加以下XML代码实现的: ```...

    Android系列之如何判断网络链接状态

    在Android开发中,判断网络连接状态是至关重要的功能之一,特别是在设计依赖于互联网的应用时。本文将深入探讨如何在Android应用程序中实现网络连接状态的检测,包括但不限于WiFi、GSM和3G网络,并且会触及到更深...

    Android获取当前网络状态并检测网络的连接模式

    在Android开发中,获取当前网络状态以及检测网络连接模式是一项重要的功能,这有助于应用程序根据不同的网络环境提供相应的服务。本文将详细讲解如何在Android中实现这一功能。 首先,要获取网络状态,我们需要引入...

    android判断网络是否连接

    `NetworkInfo`对象包含了网络连接的状态信息,我们可以通过`isConnected()`或`isConnectedOrConnecting()`来判断当前网络是否可用。前者仅在完全连接时返回`true`,后者在连接中或已连接时返回`true`。 ```java ...

    Android判断网速(基于Android Studio)

    使用`ConnectivityManager.getActiveNetworkInfo()`获取当前活动的网络信息,`NetworkInfo`对象包含网络类型(如移动数据、WiFi等)和状态(是否连接)。然而,这个方法不会提供具体的网速信息,我们需要其他方法来...

    Android 判断网络连接

    在Android开发中,判断网络连接状态是至关重要的,它能够帮助开发者确保应用在有网络的情况下进行数据通信,或者在无网络时提供相应的错误提示和处理。以下是对标题和描述中涉及的知识点的详细说明: **1. Android...

    Android判断软键盘是否弹出

    标题“Android判断软键盘是否弹出”所涉及的知识点主要集中在如何实现这个功能。下面将详细解释这一过程。 首先,软键盘的弹出和隐藏通常会影响到Activity的窗口大小。Android系统在软键盘弹出或隐藏时会触发...

    Android监听网络状态

    在Android开发中,实时监测设备的网络状态是十分重要的,这可以帮助我们确保应用在各种网络环境下都能正常工作,提供良好的用户体验。以下是一些关于“Android监听网络状态”的关键知识点: 1. **网络连接状态获取*...

    Android 检测判断手机的待机状态.rar

    Android 检测判断手机的待机状态,比如手机正在处于待机状态、手机正在响铃、手机正在震动、手机已接听电话、手机正在连接来电等等的一些状态,使用了Case语句来判断各个状态。  case TelephonyManager.CALL_STATE_...

    如何判断Android手机当前是否联网.txt

    本文将详细介绍如何通过编程方式判断Android手机当前是否处于联网状态。 #### 基本原理 在Android系统中,可以通过`ConnectivityManager`类来获取设备的网络连接信息。该类提供了多种方法用于查询网络连接的状态,...

    Android 实时监测网络连接状态变化

    本篇文章将深入探讨如何实现这一功能,包括监听网络连接的状态,判断当前的网络类型,以及处理网络状态变化的相关策略。 首先,我们需要了解Android系统提供了一套完整的网络连接管理API,允许开发者注册接收网络...

    Android 判断联网状态

    在Android开发中,判断设备联网状态是至关重要的,这关系到应用能否正常访问网络资源,如下载数据、发送请求或接收推送。以下是一篇详细解释如何在Android中判断WIFI和GPRS(2G/3G)联网状态的教程。 首先,我们...

    android demo,网络状态测试

    在Android开发中,进行网络状态测试是至关重要的,因为网络连接是许多应用程序功能的基础。"android demo,网络状态测试"这个项目就是一个示例,旨在帮助开发者了解如何在Android平台上检测和处理网络连接的状态。...

    Android-Android监听网络变化判断网络连接类型网络制式等工具类

    在Android应用开发中,了解和管理网络状态是至关重要的,因为网络连接的可用性和类型直接影响到应用程序的功能和服务。本文将详细讲解如何在Android系统中监听网络变化,判断网络连接类型以及网络制式,并介绍一个名...

Global site tag (gtag.js) - Google Analytics