首页 > 移动平台 > 详细

Android 开发 检查网络状态

时间:2021-01-28 21:06:36      阅读:24      评论:0      收藏:0      [点我收藏+]


public class ProUtils {


    /**
    直接调用这个方法即可
    **/
    public static boolean isNetOk(Context context) {
        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
            return isLegacyNetCheck(context);
        } else {
            return isNewNetCheck(context);
        }
    }


    /**
     * SDK API 小于23使用
     * @return
     */
    private static boolean isLegacyNetCheck(Context context) {
        return isMobileConnection(context) || isWIFIConnection(context);
    }

    /**
     * 判断手机接入点(APN)是否处于可以使用的状态
     *sdk <23
     * @param context
     * @return
     */
    private static boolean isMobileConnection(Context context) {
        ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
        if (networkInfo != null && networkInfo.isConnected()) {
            return true;
        }
        return false;
    }

    /**
     * 判断当前wifi是否是处于可以使用状态
     *sdk <23
     * @param context
     * @return
     */
    private static boolean isWIFIConnection(Context context) {
        ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        if (networkInfo != null && networkInfo.isConnected()) {
            return true;
        }
        return false;
    }

    /**
     * sdk 23以上使用的方法
     * @param context
     * @return
     */
    private static boolean isNewNetCheck(Context context) {
        ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
        return (networkInfo != null && networkInfo.isConnected());
    }


}

Android 开发 检查网络状态

原文:https://www.cnblogs.com/flowliver/p/14341523.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!