gpt4 book ai didi

android - 'connectionInfo : WifiInfo! 的 getter' 已被弃用。在 Java (Api 31) 中已弃用

转载 作者:行者123 更新时间:2023-12-04 23:42:13 31 4
gpt4 key购买 nike

当我想通过 WifiManager.connectionInfo 获取有关当前 wifi 连接的信息时,我得到
这个:

'getter for connectionInfo: WifiInfo!' is deprecated. Deprecated in Java


我怎样才能在 Android 12 中做到这一点? (只想获取rssi)

最佳答案

从 Build.VERSION_CODES#S 开始,WifiInfo 检索被移动到 ConnectivityManager API 表面。 WifiInfo 附加在 NetworkCapabilities#getTransportInfo() 中,可通过 NetworkCallback#onCapabilitiesChanged(Network, NetworkCapabilities) 中的回调或 ConnectivityManager#getNetworkCapabilities(Network) 按需提供。

final NetworkRequest request =
new NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.build();
final ConnectivityManager connectivityManager =
context.getSystemService(ConnectivityManager.class);
final NetworkCallback networkCallback = new NetworkCallback() {
...
@Override
void onAvailable(Network network) {}

@Override
void onCapabilitiesChanged(Network network, NetworkCapabilities networkCapabilities) {
WifiInfo wifiInfo = (WifiInfo) networkCapabilities.getTransportInfo();
}
// etc.
};
connectivityManager.requestNetwork(request, networkCallback); // For request
connectivityManager.registerNetworkCallback(request, networkCallback); // For listen
https://developer.android.com/reference/kotlin/android/net/wifi/WifiManager#getConnectionInfo()

关于android - 'connectionInfo : WifiInfo! 的 getter' 已被弃用。在 Java (Api 31) 中已弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68512057/

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