关闭

Android中用ConnectivityManager 判断网络的工具类

标签: 网络android开发androidConnectivityManager
432人阅读 评论(0) 收藏 举报
分类:


在android开发中,判断当前网络时,用到了ConnectivityManager,它是网络连接管理器.负责回应网络的连接状态.进行网络判断时,主要有以下5个部分:

    1.判断网络是否是可用的
    2.判断网络是否已经连接
    3.得到网络类型
    4.判断是否是WiFi网络
    5.判断看是否是Mobile类型网络

实例如下:


/**
 * Created by jyq on 2015/11/19.
 */
public class ConnectUtils {

    /*
    * 判断网络是否可用
    * */
    public static boolean isNetworkAvilable(Context context){


        ConnectivityManager manager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo networkInfo = manager.getActiveNetworkInfo();

        if (networkInfo!=null){
            boolean b = networkInfo.isAvailable();
            return b;
        }
        return false;
    }
    /*
    * 判断网络是否连接
    * */
    public static boolean isConnected(Context context){


        ConnectivityManager manager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getActiveNetworkInfo();

        if (networkInfo!=null){
            boolean connected = networkInfo.isConnected();
            return connected;
        }


        return false;
    }


    /*
    * 获取网络类型
    * */
    public static String getNetworkType(Context context){
        ConnectivityManager manager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getActiveNetworkInfo();

        if (networkInfo!=null){
            String typeName = networkInfo.getTypeName();
            return typeName;
        }
        return null;
    }
    /*
    * 判断是否是WIFI网络
    * */
    public static boolean isWifiNetwork(Context context){
        ConnectivityManager manager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        if (networkInfo!=null&&networkInfo.isConnected()) {
            return true;
        }
        return false;
    }
    /*
    * 判断是否是Mobile类型
    * */
    public static boolean isMonbileNetwork(Context context){
        ConnectivityManager manager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

        if (networkInfo!=null&&networkInfo.isConnected()) {
            return true;
        }
        return false;
    }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:39108次
    • 积分:888
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:3篇
    • 译文:0篇
    • 评论:7条
    最新评论