阿里云国际站:android 判断手机网络类型的

在Android中,可以通过ConnectivityManagerNetworkInfo类,判断手机目前正在使用的网络类型。以下给出示例代码:

public String getNetworkType(Context context) {
    String strNetworkType = "";
    
    NetworkInfo networkInfo = ((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE)).getActiveNetworkInfo();
    
    if (networkInfo != null && networkInfo.isConnected()) {
        if (networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
            strNetworkType = "WIFI";
        } else if (networkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
            String _strSubTypeName = networkInfo.getSubtypeName();
            
            //如果是2G类型
            if (_strSubTypeName.equalsIgnoreCase("GSM") || _strSubTypeName.equalsIgnoreCase("CDMA")
                    || _strSubTypeName.equalsIgnoreCase("EDGE") || _strSubTypeName.equalsIgnoreCase("1xRTT")
                    || _strSubTypeName.equalsIgnoreCase("IDEN")) {
                strNetworkType = "2G";
            }
            //如果是3G类型
            else if (_strSubTypeName.equalsIgnoreCase("UMTS") || _strSubTypeName.equalsIgnoreCase("EVDO_0")
                    || _strSubTypeName.equalsIgnoreCase("EVDO_A") || _strSubTypeName.equalsIgnoreCase("HSDPA")
                    || _strSubTypeName.equalsIgnoreCase("HSUPA") || _strSubTypeName.equalsIgnoreCase("HSPA")
                    || _strSubTypeName.equalsIgnoreCase("EVDO_B") || _strSubTypeName.equalsIgnoreCase("EHRPD")
                    || _strSubTypeName.equalsIgnoreCase("HSPAP")) {
                strNetworkType = "3G";
            }
            //如果是4G类型
            else if (_strSubTypeName.equalsIgnoreCase("LTE") || _strSubTypeName.equalsIgnoreCase("UMB")
                    || _strSubTypeName.equalsIgnoreCase("HSPA+")) {
                strNetworkType = "4G";
            }
            //Unknown
            else {
                strNetworkType = _strSubTypeName;
            }
        }
    }
    
    return strNetworkType;
}

请注意,这些代码需要ACCESS_NETWORK_STATE权限,因此请在您的manifest.xml中添加此行:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

上述代码主要是使用了ConnectivityManager来获取当前活跃的网络连接信息,然后通过判断网络类型和子类型名称来判断手机正在使用的具体网络类型。

阿里云国际站:android 判断手机网络类型的

发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/170528.html

(0)
luotuoemo的头像luotuoemo
上一篇 2024年3月23日 05:03
下一篇 2024年3月23日 05:17

相关推荐

  • 佛山阿里云代理商:阿里云服务器绑定对应的域名

    阿里云服务器绑定对应的域名需要进行以下步骤: 登录阿里云官网(https://www.aliyun.com/),选择您的服务器所在的地域和产品类型,并购买一个合适的云服务器实例。 进入阿里云管理控制台,在左侧导航栏中找到云服务器ECS,点击进入。 在云服务器ECS页面,找到您购买的服务器实例,并点击其对应的管理按钮进入服务器详情页面。 在服务器详情页面,在左…

    2023年12月22日
    84000
  • 阿里云企业邮箱代理商:如何参加阿里云企业邮箱的新功能内测活动尝鲜?

    阿里云企业邮箱代理商:如何参加阿里云企业邮箱的新功能内测活动尝鲜? 一、阿里云企业邮箱的核心优势 阿里云企业邮箱作为国内领先的企业级邮箱服务,凭借其强大的技术支持和丰富的功能,为企业用户提供了高效、安全的沟通解决方案。其核心优势包括: 高安全性:采用多层加密技术,支持邮件防泄漏、反垃圾邮件和病毒防护,确保企业数据安全。 稳定可靠:依托阿里云全球数据中心,提供…

    2025年10月20日
    42700
  • 阿里云企业邮箱:阿里云的邮件撤回为何更及时?

    以下是根据要求撰写的文章,结合阿里云企业邮箱及其代理商的优势,重点解析邮件撤回功能的高效性: 阿里云企业邮箱:揭秘邮件撤回为何更及时的核心优势 一、邮件撤回——企业高效沟通的安全网 在快节奏的商务沟通中,误发邮件堪称职场”社死现场”。传统邮箱的撤回功能常因延迟导致失败,而阿里云企业邮箱凭借98%的撤回成功率和分钟级响应速度,成为企业高…

    2025年6月23日
    46200
  • 北海阿里云企业邮箱代理商:如何将阿里邮箱关联到微信中

    北海阿里云企业邮箱代理商:如何将阿里邮箱关联到微信中 阿里云企业邮箱是一款强大的企业邮件服务,它为企业提供了稳定可靠、安全高效的邮件解决方案。同时,阿里云企业邮箱还支持与微信的关联,帮助企业实现更加便捷的沟通和协作。本文将介绍如何将阿里邮箱关联到微信中,并分享使用企业邮箱后的感受。 一、将阿里邮箱关联到微信 1. 下载并安装阿里邮箱App,登录邮箱账号。 2…

    2024年1月26日
    72400
  • 漳州阿里云代理商:阿里云 部署网站

    阿里云代理商可以帮助您在漳州地区部署和配置阿里云提供的云服务,包括部署网站。 以下是漳州阿里云代理商在部署网站方面可以为您提供的服务: 服务器租用:代理商可以帮助您选择合适的服务器规格和配置,并租用阿里云服务器供您使用。 操作系统安装与配置:代理商可以帮助您安装和配置适合您网站需求的操作系统,例如Linux、Windows等。 数据库安装与配置:代理商可以协…

    2024年2月16日
    80200

发表回复

登录后才能评论

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
购买阿里云服务器请访问:https://www.4526.cn/