Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。
这篇文章主要为大家详细介绍了Android判断网络类型的方法,判断是Wifi还是4G网络代码分享,感兴趣的小伙伴们可以参考一下
- package com.chengxinet.bobo.utils;
- import android.content.Context;
- import android.net.ConnectivityManager;
- import android.net.NetworkInfo;
- import android.telephony.TelephonyManager;
- /**
- * Created by Administrator on 2016/1/7.
- */
- public class NetworkUtils {
- public static boolean isNetworkAvailable(Context c) {
- Context context = c.getApplicationContext();
- // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理)
- ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
- if (connectivityManager == null) {
- return false;
- } else {
- // 获取NetworkInfo对象
- NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo();
- if (networkInfo != null && networkInfo.length > 0) {
- for (NetworkInfo aNetworkInfo : networkInfo) {
- // System.out.println(i + "===状态===" + networkInfo[i].getState());
- // System.out.println(i + "===类型===" + networkInfo[i].getTypeName());
- // 判断当前网络状态是否为连接状态
- if (aNetworkInfo.getState() == NetworkInfo.State.CONNECTED) {
- return true;
- }
- }
- }
- }
- return false;
- }
- /**
- * 判断WIFI是否打开
- * @param context
- * @return
- */
- 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网络
- * @param context
- * @return
- */
- 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网络
- * @param context
- * @return
- */
- 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.phperz.com/article/17/0916/348594.html