我有一个代码来检查用户是否已连接
val connected:Boolean
val connectivityManager = getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
connected = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_VPN).state == NetworkInfo.State.CONNECTED
if(connected){
} else {
}
但每次我构建它时,它都会告诉我它已折旧。
如果有其他方法可以检查用户连接更改,请分享。
最佳答案
来自 Android 文档:
This method was deprecated in API level 23. This method does not support multiple connected networks of the same type. Use
getAllNetworks()
andgetNetworkInfo(android.net.Network)
instead.
在你的情况下你可能真的想要:
Network network = connectivityManager.getActiveNetwork();
NetworkCapabilities caps = connectivityManager.getNetworkCapabilities(network);
connected = caps.hasCapability(TRANSPORT_VPN) && network.isConnected();
关于java - 如何在 Android Studio 中更改已弃用的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54596492/