首先在AndroidManifest.xml添加权限

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

1,判断是否有网络连接

  1. public boolean isNetworkConnected(Context context) {
  2. if (context != null) {
  3. ConnectivityManager mConnectivityManager = (ConnectivityManager) context
  4. .getSystemService(Context.CONNECTIVITY_SERVICE);
  5. NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
  6. if (mNetworkInfo != null) {
  7. return mNetworkInfo.isAvailable();
  8. }
  9. }
  10. return false;
  11. }

2.判断WIFI网络是否可用

  1. public boolean isWifiConnected(Context context) {
  2. if (context != null) {
  3. ConnectivityManager mConnectivityManager = (ConnectivityManager) context
  4. .getSystemService(Context.CONNECTIVITY_SERVICE);
  5. NetworkInfo mWiFiNetworkInfo = mConnectivityManager
  6. .getNetworkInfo(ConnectivityManager.TYPE_WIFI);
  7. if (mWiFiNetworkInfo != null) {
  8. return mWiFiNetworkInfo.isAvailable();
  9. }
  10. }
  11. return false;
  12. }

3.判断MOBILE网络是否可用

  1. public boolean isMobileConnected(Context context) {
  2. if (context != null) {
  3. ConnectivityManager mConnectivityManager = (ConnectivityManager) context
  4. .getSystemService(Context.CONNECTIVITY_SERVICE);
  5. NetworkInfo mMobileNetworkInfo = mConnectivityManager
  6. .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
  7. if (mMobileNetworkInfo != null) {
  8. return mMobileNetworkInfo.isAvailable();
  9. }
  10. }
  11. return false;
  12. }

4.判断网络类型

    1. //返回值 -1:没有网络  1:WIFI网络2:wap网络3:net网络
    2. public static int GetNetype(Context context)
    3. {
    4. int netType = -1;
    5. ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    6. NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
    7. if(networkInfo==null)
    8. {
    9. return netType;
    10. }
    11. int nType = networkInfo.getType();
    12. if(nType==ConnectivityManager.TYPE_MOBILE)
    13. {
    14. if(networkInfo.getExtraInfo().toLowerCase().equals("cmnet"))
    15. {
    16. netType = 3;
    17. }
    18. else
    19. {
    20. netType = 2;
    21. }
    22. }
    23. else if(nType==ConnectivityManager.TYPE_WIFI)
    24. {
    25. netType = 1;
    26. }
    27. return netType;
    28. }

Android 中判断网络状态的更多相关文章

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

    Android中判断网络连接是否可用及监控网络状态 作者: 字体:[增加 减小] 类型:转载 获取网络信息需要在AndroidManifest.xml文件中加入相应的权限,接下来详细介绍Android ...

  2. android 中获取网络状态、判断3G、2G、wifi网络、判断wifi是否打开、获取本机地址、获取本机串号IMEI整理

    代码如下:package com.android.xym; import java.io.IOException; import java.net.HttpURLConnection; import ...

  3. Android中判断网络是否连接并提示设置

    /** * 判断网络是否连通 * @param context * @return */ public static boolean isNetworkConnected(Context contex ...

  4. android中判断网络连接是否可用

    一.判断网络连接是否可用 public static boolean isNetworkAvailable(Context context) { ConnectivityManager cm = (C ...

  5. 5、android ConnectivityManager获取网络状态

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  6. android开发获取网络状态,wifi,wap,2g,3g.工具类(一)

    android开发获取网络状态整理: package com.gzcivil.utils; import android.content.Context; import android.net.Con ...

  7. Android获取当前网络状态

    Android获取当前网络状态 效果图 有网络 没有网络 源码 下载地址(Android Studio工程):http://download.csdn.net/detail/q4878802/9052 ...

  8. Android中判断当前网络是否可用

    转载原文地址:http://www.cnblogs.com/renqingping/archive/2012/10/18/Net.html 当前有可用网络,如下图: 当前没有可用网络,如下图: 实现步 ...

  9. android 开发中判断网络是否连接的代码

    在android的开发中,尤其是与访问网络有关的开发,都要判断一下手机是否连接上了网络,下面是一个判断是否连接网络的嗲吗片段: package cn.com.karl.util; import com ...

随机推荐

  1. 编写高质量代码改善C#程序的157个建议——建议33:避免在泛型类型中声明静态成员

    建议33:避免在泛型类型中声明静态成员 在上一建议中,已经理解了应该将MyList<int>和MyList<string>视作两个完全不同的类型,所以,不应该将MyList&l ...

  2. 激光样式——第九届蓝桥杯C语言B组(国赛)第二题

    原创 标题:激光样式x星球的盛大节日为增加气氛,用30台机光器一字排开,向太空中打出光柱.安装调试的时候才发现,不知什么原因,相邻的两台激光器不能同时打开!国王很想知道,在目前这种bug存在的情况下, ...

  3. 模板方法(Template Method)模式

    /* * 抽象模版(AbstractClass)角色有如下的责任: 定义了一个或多个抽象操作,以便让子类实现.这些抽象操作叫做基本操作,它们是一个顶级逻辑的组成步骤. 定义并实现了一个模版方法.这个模 ...

  4. android MVP模式简单介绍

    原文 http://zhengxiaopeng.com/2015/02/06/Android%E4%B8%AD%E7%9A%84MVP/ 前言 MVP作为一种MVC的演化版本在Android开发中受到 ...

  5. IdentityServer4实现单点登录统一认证

    什么是单点登录统一认证:假如某公司旗下有10个网站(比如各种管理网站:人事系统啊,财务系统啊,业绩系统啊等),我是该公司一管理员或者用户,按照传统网站模式是这样:我打开A网站 输入账号密码 然后进入到 ...

  6. 基于matlab的FIR加窗滤波器设计

    1.确定参数: Wp 通带截止频率 Ws  阻带截止频率 As  衰减dB Rp   纹波dB 2.根据参数确定理想 频率响应 (M     (Wp + Ws )/2  ) 双边响应 3.选窗 过滤带 ...

  7. Ubuntu chmod 命令可以用来修改文件或文件夹的读写权限

    chmod 命令有两种使用方式 —————————————————————————— (1)chmod [ u / g / o / a ] [ + / - / = ] [ r / w / x ] fi ...

  8. spring 学习(一):使用 intellijIDEA 创建 maven 工程进行 Spring ioc 测试

    spring学习(一):使用 intellijIDEA 创建 maven 工程进行 Spring ioc 测试 ioc 概念 控制反转(Inversion of Control,缩写为IOC),是面向 ...

  9. 洛谷P2510 [HAOI2008]下落的圆盘(计算几何)

    题面 传送门 题解 对于每个圆,我们单独计算它被覆盖的周长是多少 只有相交的情况需要考虑,我们需要知道相交的那段圆弧的角度,发现其中一个交点和两个圆的圆心可以构成一个三角形且三边都已经知道了,那么我们 ...

  10. FJWC2019 子图 (三元环计数、四元环计数)

    给定 n 个点和 m 条边的一张图和一个值 k ,求图中边数为 k 的联通子图个数 mod 1e9+7. \(n \le 10^5, m \le 2 \times 10^5, 1 \le k \le ...