获取当前手机网络情况

来源:互联网 发布:剑客抢购软件 编辑:程序博客网 时间:2024/05/21 01:27

public class NetUtil {    public static final String NO_NET = "NO";    public static final String TWO_NET = "2G";    public static final String THREE_NET = "3G";    public static final String FOUR_NET = "4G";    public static final String MISSING_NET = "unknown";    public static final String WIFI_NET = "WIFI";    /**     * 获取当前网络类型     *     * @param context     * @return 2G/3G/4G/WIFI/no/unknown     */    public static String getNetType(Context context) {        ConnectivityManager cm = (ConnectivityManager) context                .getSystemService(Context.CONNECTIVITY_SERVICE);        final NetworkInfo info = cm.getActiveNetworkInfo();        if (info == null || !info.isAvailable()) {            return NO_NET;        }        if (info.getType() == ConnectivityManager.TYPE_WIFI) {            return WIFI_NET;        }        if (info.getType() == ConnectivityManager.TYPE_MOBILE) {            int sub = info.getSubtype();            switch (sub) {                case TelephonyManager.NETWORK_TYPE_GPRS:                case TelephonyManager.NETWORK_TYPE_EDGE:                case TelephonyManager.NETWORK_TYPE_CDMA://电信的2G                case TelephonyManager.NETWORK_TYPE_1xRTT:                case TelephonyManager.NETWORK_TYPE_IDEN:                    //以上的都是2G网络                    return TWO_NET;                case TelephonyManager.NETWORK_TYPE_UMTS:                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:                    //以上的都是3G网络                    return THREE_NET;                case TelephonyManager.NETWORK_TYPE_LTE:                    return FOUR_NET;                case TelephonyManager.NETWORK_TYPE_UNKNOWN:                    return MISSING_NET;                default:                    return MISSING_NET;            }        }        return MISSING_NET;    }}
原创粉丝点击