Android 网络通用类 NetUtil

1.整体分析

1.1.源代码如下,可以直接Copy。

public class NetUtil {

    /**
     * 用户是否连接网络
     *
     * @param context Context
     */
    public static boolean isNetConnection(Context context) {
        final ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        final NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
        return (networkInfo != null && networkInfo.isAvailable());
    }

    /**
     * 是否连接Wifi
     *
     * @param context Context
     */
    public static boolean isWifiConnection(Context context) {
        ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo wifiNetworkInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        if (wifiNetworkInfo.isConnected()) {
            return true;
        }
        return false;
    }
}
View Code

 

1.2.主要方法。

  • 判断手机是否连接到网络
  • 判断手机是否连接到wifi

 还有很多适用的方法,以后再遇到了再添加。    


2.局部分析

2.1.判断手机是否连接到网络

  

  这里用到了一个系统服务,context.getSystemService(Context.CONNECTIVITY_SERVICE)获取管理器

  然后用一个管理器的实例.getActiveNetworkInfo()即可获取网络连接状态信息。

 

2.2.判断手机是否连接到wifi

  

  判断wifi,其实是在前者的基础上,用管理器.getNetworkInfo(里面是wifi的状态码)

  其实一般情况判断网络存在与否就行了,因为网络包括手机数据连接+wifi的。



posted @ 2017-11-28 15:50  Jason_Jan  阅读(701)  评论(0编辑  收藏  举报