public static String getNetworkType() {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm == null) {
return "Unknown";
}
NetworkInfo activeNetInfo = cm.getActiveNetworkInfo();
if (activeNetInfo == null || !activeNetInfo.isAvailable()) {
return "Unknown";
}
NetworkInfo wifiInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (wifiInfo != null) {
NetworkInfo.State state = wifiInfo.getState();
if (state != null && state == NetworkInfo.State.CONNECTED || state == NetworkInfo.State.CONNECTING) {
return "WiFi状态";
}
}
NetworkInfo networkInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (networkInfo != null) {
NetworkInfo.State state = networkInfo.getState();
String subtypeName = networkInfo.getSubtypeName();
if (state != null && state == NetworkInfo.State.CONNECTED || state == NetworkInfo.State.CONNECTING) {
switch (activeNetInfo.getSubtype()) {
case TelephonyManager.NETWORK_TYPE_GPRS:
case TelephonyManager.NETWORK_TYPE_CDMA:
case TelephonyManager.NETWORK_TYPE_EDGE:
case TelephonyManager.NETWORK_TYPE_1xRTT:
case TelephonyManager.NETWORK_TYPE_IDEN:
return "2G";
case TelephonyManager.NETWORK_TYPE_EVDO_A:
case TelephonyManager.NETWORK_TYPE_UMTS:
case TelephonyManager.NETWORK_TYPE_EVDO_0:
case TelephonyManager.NETWORK_TYPE_HSDPA:
case TelephonyManager.NETWORK_TYPE_HSUPA:
case TelephonyManager.NETWORK_TYPE_HSPA:
case TelephonyManager.NETWORK_TYPE_EVDO_B:
case TelephonyManager.NETWORK_TYPE_EHRPD:
case TelephonyManager.NETWORK_TYPE_HSPAP:
return "3G";
case TelephonyManager.NETWORK_TYPE_LTE:
return "4G";
default:
if (subtypeName.equalsIgnoreCase("TD-SCDMA") || subtypeName.equalsIgnoreCase("WCDMA") || subtypeName.equalsIgnoreCase("CDMA2000")) {
return "3G";
}
return "Unknown";
}
}
}
return "Unknown";
}
获取android版本
public static int getAndroidVersion() {
return Build.VERSION.SDK_INT;
}
获取操作系统版本
public static String getOsVersion() {
return Build.VERSION.RELEASE;
}
获取目标sdk版本号
public static int getTargetSdkVer() {
if (context == null) {
return 0;
}
return context.getApplicationInfo().targetSdkVersion;
}
评论区