gpt4 book ai didi

android - 不推荐使用 ConnectivityManager getNetworkInfo(int)

转载 作者:IT老高 更新时间:2023-10-28 13:04:48 31 4
gpt4 key购买 nike

使用 compileSdkVersion 23,但尝试支持早至 9。

getNetworkInfo(int)在 23 中已弃用。建议使用 getAllNetworks()getNetworkInfo(Network)反而。然而,这两个都需要至少 API 21。

是否有我们可以在支持包中使用的类来帮助解决这个问题?

我知道有人提出了解决方案before ,但是我的最低 API 要求为 9 的挑战带来了问题。

最佳答案

你可以使用:

getActiveNetworkInfo();

ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork != null) {
// connected to the internet
if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI) {
// connected to wifi
} else if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE) {
// connected to mobile data
}
} else {
// not connected to the internet
}

或者在开关盒中

ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork != null) {
// connected to the internet
switch (activeNetwork.getType()) {
case ConnectivityManager.TYPE_WIFI:
// connected to wifi
break;
case ConnectivityManager.TYPE_MOBILE:
// connected to mobile data
break;
default:
break;
}
} else {
// not connected to the internet
}

关于android - 不推荐使用 ConnectivityManager getNetworkInfo(int),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32547006/

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