翰林优商.apk(点击下载) / g.java


package com.tb.tb_lib.l;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import com.efs.sdk.base.core.util.NetworkUtil;
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;

public class g {

    public enum a {
        NONE(0),
        MOBILE(1),
        MOBILE_2G(2),
        MOBILE_3G(3),
        WIFI(4),
        MOBILE_4G(5);

        private a(int i) {
        }
    }

    public static int a(Context context) {
        try {
            if (!d(context)) {
                return -1;
            }
            if (!e(context)) {
                return -2;
            }
            String simOperator = ((TelephonyManager) context.getSystemService("phone")).getSimOperator();
            if (!"46001".equals(simOperator) && !"46006".equals(simOperator)) {
                if (!"46009".equals(simOperator)) {
                    if (!"46000".equals(simOperator) && !"46002".equals(simOperator) && !"46004".equals(simOperator)) {
                        if (!"46007".equals(simOperator)) {
                            return ("46003".equals(simOperator) || "46005".equals(simOperator) || "46011".equals(simOperator)) ? 3 : 0;
                        }
                    }
                    return 1;
                }
            }
            return 2;
        } catch (Throwable unused) {
            return -1;
        }
    }

    public static String a() {
        try {
            Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
            while (networkInterfaces.hasMoreElements()) {
                Enumeration<InetAddress> inetAddresses = networkInterfaces.nextElement().getInetAddresses();
                while (true) {
                    if (inetAddresses.hasMoreElements()) {
                        InetAddress nextElement = inetAddresses.nextElement();
                        if (!nextElement.isLoopbackAddress()) {
                            return nextElement.getHostAddress().toString();
                        }
                    }
                }
            }
            return "";
        } catch (SocketException unused) {
            return "";
        }
    }

    public static String a(int i) {
        return (i & 255) + "." + ((i >> 8) & 255) + "." + ((i >> 16) & 255) + "." + ((i >> 24) & 255);
    }

    public static String b(Context context) {
        try {
            return f(context) ? a(((WifiManager) context.getSystemService(NetworkUtil.NETWORK_TYPE_WIFI)).getConnectionInfo().getIpAddress()) : a();
        } catch (Exception unused) {
            return "";
        }
    }

    public static a c(Context context) {
        try {
            NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
            if (activeNetworkInfo != null) {
                if (activeNetworkInfo.isAvailable()) {
                    int type = activeNetworkInfo.getType();
                    if (type != 0) {
                        return type != 1 ? a.MOBILE : a.WIFI;
                    }
                    switch (((TelephonyManager) context.getSystemService("phone")).getNetworkType()) {
                        case 1:
                        case 2:
                        case 4:
                        case 7:
                        case 11:
                        case 16:
                            return a.MOBILE_2G;
                        case 3:
                        case 5:
                        case 6:
                        case 8:
                        case 9:
                        case 10:
                        case 12:
                        case 14:
                        case 15:
                        case 17:
                            return a.MOBILE_3G;
                        case 13:
                        case 18:
                        case 19:
                            return a.MOBILE_4G;
                        default:
                            String subtypeName = activeNetworkInfo.getSubtypeName();
                            return (TextUtils.isEmpty(subtypeName) || (!subtypeName.equalsIgnoreCase("TD-SCDMA") && !subtypeName.equalsIgnoreCase("WCDMA") && !subtypeName.equalsIgnoreCase("CDMA2000"))) ? a.MOBILE : a.MOBILE_3G;
                    }
                }
            }
            return a.NONE;
        } catch (Throwable unused) {
            return a.MOBILE;
        }
    }

    private static boolean d(Context context) {
        return ((TelephonyManager) context.getSystemService("phone")).getSimState() == 5;
    }

    public static boolean e(Context context) {
        Method declaredMethod = ConnectivityManager.class.getDeclaredMethod("getMobileDataEnabled", new Class[0]);
        declaredMethod.setAccessible(true);
        return ((Boolean) declaredMethod.invoke((ConnectivityManager) context.getSystemService("connectivity"), new Object[0])).booleanValue();
    }

    public static boolean f(Context context) {
        return c(context) == a.WIFI;
    }
}