描述
在Android-12中,我无法使用ConnectivityManager.NetworkCallback
类中的onCapabilitiesChanged
获取WIFI SSID。
在Android-12中,getConnectionInfo已被弃用。因此,根据Android文档的建议,我正在尝试使用onCapabilitiesChanged
获取WifiInfo
对象。
像这样,
@Override
public void onCapabilitiesChanged(@NonNull Network network, @NonNull NetworkCapabilities networkCapabilities) {
super.onCapabilitiesChanged(network, networkCapabilities);
WifiInfo wifiInfo = (WifiInfo) networkCapabilities.getTransportInfo();
}
但是,当我打印WifiInfo
对象时,它会打印SSID: <unknown ssid>和getHiddenSSID
返回true。
意外的行为是:
Android-12设备已连接到一个WIFI(例如ABC)
- 当我尝试使用
getConnectionInfo
获取WIFI SSID时,它返回SSID:ABC和getHiddenSSID:false - 但是,对于相同的网络,当我尝试使用
onCapabilitiesChanged
获取WIFI SSID时,它返回SSID:<unknown ssid> 和getHiddenSSID:true
注意:已提供位置权限。
onCapabilitiesChanged
来获取 SSID。即使它已经被弃用了,你仍然可以使用WifiManager
。 - Wachid Susilo