package net.nyist.netState;  

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo; /**@author
*
*这是一个判断当前网络状态的工具类
*
*/
public class netState {
/**
*
* @return 是否有活动的网络连接
*/
public final boolean hasNetWorkConnection(Context context){
//获取连接活动管理器
final ConnectivityManager connectivityManager= (ConnectivityManager) context.
getSystemService(Context.CONNECTIVITY_SERVICE);
//获取链接网络信息
final NetworkInfo networkInfo=connectivityManager.getActiveNetworkInfo(); return (networkInfo!= null && networkInfo.isAvailable()); }
/**
* @return 返回boolean ,是否为wifi网络
*
*/
public final boolean hasWifiConnection(Context context)
{
final ConnectivityManager connectivityManager= (ConnectivityManager) context.
getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo networkInfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
//是否有网络并且已经连接
return (networkInfo!=null&& networkInfo.isConnectedOrConnecting()); } /**
* @return 返回boolean,判断网络是否可用,是否为移动网络
*
*/ public final boolean hasGPRSConnection(Context context){
//获取活动连接管理器
final ConnectivityManager connectivityManager= (ConnectivityManager) context.
getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo networkInfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
return (networkInfo!=null && networkInfo.isAvailable()); }
/**
* @return 判断网络是否可用,并返回网络类型,ConnectivityManager.TYPE_WIFI,ConnectivityManager.TYPE_MOBILE,不可用返回-1
*/
public static final int getNetWorkConnectionType(Context context){
final ConnectivityManager connectivityManager=(ConnectivityManager) context.
getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo wifiNetworkInfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
final NetworkInfo mobileNetworkInfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); if(wifiNetworkInfo!=null &&wifiNetworkInfo.isAvailable())
{
return ConnectivityManager.TYPE_WIFI;
}
else if(mobileNetworkInfo!=null &&mobileNetworkInfo.isAvailable())
{
return ConnectivityManager.TYPE_MOBILE;
}
else {
return -1;
} } }

android当前网络连接类型判断的更多相关文章

  1. Android 判断当前网络连接类型

    实际应用开发时,如果存在需要用户获取大量数据的情况,最好是先判断下网络类型,提示用户当前的网络类型,是否需要连接Wifi,etc.(手机流量太贵啦,当然土豪是无视这玩意的, (/ □ \)). 定义网 ...

  2. Unity如何判断网络连接类型

    今天遇到了一个问题,如何判断手机游戏当前的网络连接类型,是wifi还是234G? 起初准备在Android中写好插件供Unity调用,后来在网上浏览众神的帖子时,在csdn上看到了使用NetworkR ...

  3. Unity判断网络连接类型

    使用NetworkReachability判断手机游戏当前的网络连接类型,是wifi还是234G using UnityEngine; using System.Collections; public ...

  4. iphone判断当前网络连接类型

    eachability只能区分出无网络.wifi和wwan(2G&2.5G&3G)类型的网络连接类型,只需重构networkStatusForFlags方法,即可详细区分出2G与3G网 ...

  5. Android检测网络连接

    Android检测网络连接 import android.app.AlertDialog; import android.content.Context; import android.content ...

  6. android 检查网络连接状态实现步骤

    获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...

  7. Android 检测网络连接状态

    Android连接网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置. 首先,要判断网络状态,需要有相应的权限,下面为权限代码(Androi ...

  8. android检测网络连接状态示例讲解

    网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置   Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(Andro ...

  9. [android] android 获取网络连接信息

    效果图:  工具类 /** * 获取网络连接信息 * * 根据NetworkInfo可以知道有很多的连接方式和信息 * * ① 当没有任何可用网络的时候,networkinfo为null 判断netw ...

随机推荐

  1. BBS论坛项目

    一.表结构设计: 1.帖子: class Article(models.Model): title = models.CharField(max_length=255,unique=True) cat ...

  2. BZOJ4864[BeiJing 2017 Wc]神秘物质——非旋转treap

    题目描述 21ZZ 年,冬. 小诚退休以后, 不知为何重新燃起了对物理学的兴趣. 他从研究所借了些实验仪器,整天研究各种微观粒子.这 一天, 小诚刚从研究所得到了一块奇异的陨石样本, 便迫不及待地开始 ...

  3. BZOJ5249 九省联考2018IIIDX(线段树+贪心)

    显然这形成了一个树形结构.考虑这样一种贪心:按照曲目顺序,每次取消其父亲的预留,并选择当前可选择(保证其子树有合法选择且满足预留)的最大值,然后对其子树预留出大于等于他的一些值.这个做法显然是正确的. ...

  4. MVC DropDownList

    最近发现一个 MVC中绑定前台DropDownList , 并且设置默认选中项的简单方法. 直接上代码 方案一 Action:  ViewData["goodsTypeList"] ...

  5. MT【228】整数解的个数

    求方程$x+y+z=24$的整数解的个数,要求$1\le x\le 5,12\le y\le 18,-1\le z\le12$ 解:设$a_r$是方程$X+Y+Z=r$的满足上述要求的整数解的个数,那 ...

  6. 自学Linux Shell14.1-理解输入输出

    点击返回 自学Linux命令行与Shell脚本之路 14.1-理解输入输出(点击这里获得更多) 两种显示脚本输出的方法: 在显示器屏幕上显示输出 将输出重定向到文件中 1. 标准文件描述符 linux ...

  7. sql server 小技巧(1) 导入csv数据到sql server

    1. 右击 DataBaseName,选择 Tasks->Import Data 2. 选择数据源: Flat File Source , 选择一个csv文件 Advance: 选择所有的列,改 ...

  8. C++ 中的导致编译错误汇总

    多少年来,各路英雄好汉,八方神犇大佬,在CE中饮恨退役. OI的CE,还是那样熟悉的味道. (博主只能想到这么多,欢迎大家来补充) 1.变量名和内置函数冲突?!?! C++内置函数很多很多,许多你不知 ...

  9. springboot配置多环境

    https://www.cnblogs.com/jason0529/p/6567373.html   Spring的profiles机制,是应对多环境下面的一个解决方案,比较常见的是开发和测试环境的配 ...

  10. idea集成python插件

    idea集成python插件 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在继承安装Python插件时,请确认你是否安装Python解释器(Python官网:https://ww ...