我需要获取用户的连接类型,而不需要请求权限。 (内部应用程序)
目前我正在使用它:
public static String getNetworkType() {
int networkType = Application.getPhoneManager().getNetworkType();
switch (networkType) {
case TelephonyManager.NETWORK_TYPE_IWLAN:
return "Wlan";
case TelephonyManager.NETWORK_TYPE_GPRS:
case TelephonyManager.NETWORK_TYPE_EDGE:
case TelephonyManager.NETWORK_TYPE_CDMA:
case TelephonyManager.NETWORK_TYPE_1xRTT:
case TelephonyManager.NETWORK_TYPE_IDEN:
return "2g / GPRS";
case TelephonyManager.NETWORK_TYPE_UMTS:
case TelephonyManager.NETWORK_TYPE_EVDO_0:
case TelephonyManager.NETWORK_TYPE_EVDO_A:
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 "LTE";
default:
return "Notfound";
}
}
但是这不能检测用户是否在wifi上。如果用户在wifi上,则返回LTE。如果用户关闭wifi并检查3g网络,它就可以工作。
有人可以解释如何在没有获得许可的情况下检查用户是否在wifi上吗?