package com.efs.sdk.base.core.util; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Build; import android.telephony.TelephonyManager; import android.text.TextUtils; import com.kuaishou.weapon.p0.h; public class NetworkUtil { public static final String MOBILE_NETWORK = "2G/3G"; public static final String NETWORK_CLASS_2G = "2g"; public static final String NETWORK_CLASS_3G = "3g"; public static final String NETWORK_CLASS_4G = "4g"; public static final String NETWORK_CLASS_5G = "5g"; public static final String NETWORK_CLASS_DENIED = "denied"; public static final String NETWORK_CLASS_DISCONNECTED = "disconnected"; public static final String NETWORK_CLASS_UNKNOWN = "unknown"; public static final String NETWORK_TYPE_WIFI = "wifi"; public static final String UNKNOW = ""; public static final String WIFI = "Wi-Fi"; public static NetworkInfo getActiveNetworkInfo(Context context) { NetworkInfo[] allNetworkInfo; try { ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService("connectivity"); if (connectivityManager == null) { Log.w("efs.base", "get CONNECTIVITY_SERVICE is null"); return null; } NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); if ((activeNetworkInfo != null && activeNetworkInfo.isConnected()) || (allNetworkInfo = connectivityManager.getAllNetworkInfo()) == null) { return activeNetworkInfo; } for (int i = 0; i < allNetworkInfo.length; i++) { if (allNetworkInfo[i] != null && allNetworkInfo[i].isConnected()) { return allNetworkInfo[i]; } } return activeNetworkInfo; } catch (Throwable th) { Log.e("efs.base", "get network info error", th); return null; } } public static boolean isConnected(Context context) { NetworkInfo activeNetworkInfo = getActiveNetworkInfo(context); if (activeNetworkInfo == null || !activeNetworkInfo.isConnected() || activeNetworkInfo.getState() != NetworkInfo.State.CONNECTED) { return false; } return true; } public static boolean isWifi(Context context) { NetworkInfo activeNetworkInfo; if (!isRejectAccessNetworkState(context) && (activeNetworkInfo = getActiveNetworkInfo(context)) != null && activeNetworkInfo.isConnected() && activeNetworkInfo.getType() == 1) { return true; } return false; } public static boolean hasAccessNetworkState(Context context) { try { if (context.getPackageManager().checkPermission(h.b, context.getPackageName()) == 0) { return true; } return false; } catch (Throwable unused) { } } public static boolean isRejectAccessNetworkState(Context context) { return !hasAccessNetworkState(context); } public static String getNetworkType(Context context) { if (isRejectAccessNetworkState(context)) { return NETWORK_CLASS_DENIED; } NetworkInfo activeNetworkInfo = getActiveNetworkInfo(context); if (activeNetworkInfo == null) { return NETWORK_CLASS_DISCONNECTED; } if (activeNetworkInfo.getType() == 1) { return NETWORK_TYPE_WIFI; } int subtype = activeNetworkInfo.getSubtype(); if (subtype == 20) { return NETWORK_CLASS_5G; } switch (subtype) { case 1: case 2: case 4: case 7: case 11: return NETWORK_CLASS_2G; case 3: case 5: case 6: case 8: case 9: case 10: case 12: case 14: case 15: return NETWORK_CLASS_3G; case 13: return NETWORK_CLASS_4G; default: String subtypeName = activeNetworkInfo.getSubtypeName(); if (TextUtils.isEmpty(subtypeName)) { return "unknown"; } if (subtypeName.equalsIgnoreCase("TD-SCDMA") || subtypeName.equalsIgnoreCase("WCDMA") || subtypeName.equalsIgnoreCase("CDMA2000")) { return NETWORK_CLASS_3G; } return subtypeName; } } /* JADX WARNING: Removed duplicated region for block: B:11:0x003c A[ORIG_RETURN, RETURN, SYNTHETIC] */ public static boolean checkPermission(Context context, String str) { if (context == null) { return false; } if (Build.VERSION.SDK_INT >= 23) { try { if (((Integer) Class.forName("android.content.Context").getMethod("checkSelfPermission", String.class).invoke(context, str)).intValue() == 0) { return true; } return false; } catch (Throwable unused) { return false; } } else if (context.getPackageManager().checkPermission(str, context.getPackageName()) != 0) { return false; } return true; } public static String[] getNetworkAccessMode(Context context) { String[] strArr = {"", ""}; if (context == null) { return strArr; } try { if (!checkPermission(context, h.b)) { strArr[0] = ""; return strArr; } ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService("connectivity"); if (connectivityManager == null) { strArr[0] = ""; return strArr; } NetworkInfo networkInfo = connectivityManager.getNetworkInfo(1); if (networkInfo == null || networkInfo.getState() != NetworkInfo.State.CONNECTED) { NetworkInfo networkInfo2 = connectivityManager.getNetworkInfo(0); if (networkInfo2 != null && networkInfo2.getState() == NetworkInfo.State.CONNECTED) { strArr[0] = "2G/3G"; strArr[1] = networkInfo2.getSubtypeName(); } return strArr; } strArr[0] = "Wi-Fi"; return strArr; } catch (Throwable unused) { } } public static int getNetworkTypeUmeng(Context context) { try { TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService("phone"); if (checkPermission(context, h.c)) { return telephonyManager.getNetworkType(); } return 0; } catch (Exception unused) { return -100; } } }