package com.rehome.bhdxj.utils;

/**
 * Create By HuangWenFei
 * 创建日期：2023-05-19 15:35
 * 描述：
 */

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.util.Log;

public class NetworkUtil {

    private NetworkUtil() {}

    /**
     * 当前是否有Wifi网络
     * @param context  上下文
     */
    public static boolean hasNetWorkWifiStatus(Context context) {
        NetworkInfo info = getActiveNetwork(context);
        if (info == null) {
            //网络服务不可用
            Log.i("app", "网络服务不可用");
            return false;
        }
        if (info.getType() == ConnectivityManager.TYPE_WIFI) {
            //有WIFI网络
            Log.i("app", "有WIFI网络");
            return info.isAvailable();
        }
        //无网络
        Log.i("app", "无网络");
        return false;
    }

    /**
     * 当前是否有网络连接状态
     *
     * @param context  上下文
     */
    public static boolean hasNetWorkStatus(Context context) {
        NetworkInfo info = getActiveNetwork(context);
        if (info == null) {
            //网络服务不可用
            Log.i("app", "网络服务不可用");
            return false;
        }
        if(info.isAvailable()){
            //有运营商网络
            Log.i("app", "网络可用");
            return info.isAvailable();
        }
        //无运营商网络
        Log.i("app", "无网络可用");
        return false;
    }

    /**
     * 获取活动网络连接信息
     *
     * @param context 上下文
     * @return NetworkInfo
     */
    public static NetworkInfo getActiveNetwork(Context context) {
        ConnectivityManager mConnMgr = (ConnectivityManager) context
                .getSystemService(Context.CONNECTIVITY_SERVICE);
        if (mConnMgr == null) {
            return null;
        }
        // 获取活动网络连接信息
        return mConnMgr.getActiveNetworkInfo();
    }
}
