方式一
/**
* 判断网络是否连接
*
* @param ctxt
* @return true :连接 ; false: 断开
*/
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public static boolean isNetworkConnected(Context ctxt) {
ConnectivityManager cm = (ConnectivityManager) ctxt.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
return (networkInfo != null && networkInfo.isConnected());
}
方式二
因为方式一中的getActiveNetworkInfo() 已被Deprecated了,用如下方法替换:
/**
* 判断网络是否连接
*
* @param ctxt
* @return true :连接 ; false: 断开
*/
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public static boolean isNetworkConnected(Context ctxt) {
ConnectivityManager cm = (ConnectivityManager) ctxt.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkCapabilities networkCapabilities = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
networkCapabilities = cm.getNetworkCapabilities(cm.getActiveNetwork());
}
return networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
}