gpt4 book ai didi

android - 检查互联网是否可用(targetSdk : Android Q)

转载 作者:行者123 更新时间:2023-11-29 02:19:39 25 4
gpt4 key购买 nike

我希望在我的项目中实现一个简单的方法 isInternetAvailable,它根据调用时互联网(任何网络)是否可用返回 true 或 false。

不幸的是 getActiveNetworkInfo 从 21 开始被弃用,getActiveNetwork 需要最低 API 级别 23(我的是 21)。

我已经读过有关NetworkCallback的内容,但这似乎是在通知网络变化时,我需要一种方法来判断网络现在是否可用。

最佳答案

使用NetworkCapabilities像这样:

fun isNetworkAvailable(): Boolean {
return connectivityManager.run {
getNetworkCapabilities(activeNetwork)?.run {
when {
hasTransport(NetworkCapabilities.TRANSPORT_WIFI) -> true
hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR) -> true
hasTransport(NetworkCapabilities.TRANSPORT_ETHERNET) -> true
else -> false
}
} ?: false
}
}

关于android - 检查互联网是否可用(targetSdk : Android Q),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57199632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com