Как получить все доступные сети WLAN в Android?C#

Место общения программистов C#
Anonymous
Как получить все доступные сети WLAN в Android?

Сообщение Anonymous »

Моя конечная цель — получить все BSSID текущей подключенной сети WIFI в Android.
Если я прав, Android не поддерживает эту функцию, как это делает Windows с WlanGetNetworkBssList< /code>.
Из-за этого мне нужно получить список всех доступных сетей WIFI и использовать их BDDID с одним и тем же SSID (читаемое пользователем имя WIFI).< /p>
Я пробую это с:

Код: Выделить всё

_connectivityManager = App.Context.GetSystemService(Context.ConnectivityService) as ConnectivityManager;

var requestBuilder = new NetworkRequest.Builder();
requestBuilder.SetIncludeOtherUidNetworks(true);
requestBuilder.AddTransportType(Android.Net.TransportType.Wifi);

_connectivityManager.RegisterNetworkCallback(requestBuilder.Build(), new MyNetworkCallback());
и с:

Код: Выделить всё

private class MyNetworkCallback() : ConnectivityManager.NetworkCallback((int)NetworkCallbackFlags.IncludeLocationInfo)
{
...

public void OnCapabilitiesChanged(Android.Net.Network network, NetworkCapabilities networkCapabilities)
{
if (networkCapabilities.TransportInfo is WifiInfo wifiInfo
&& wifiInfo.SupplicantState == SupplicantState.Completed
&& wifiInfo.SSID == _mySSID)
_myBssids.Add(wifiInfo.BSSID);
}

...
}
Я предоставил разрешения ACCESS_FINE_LOCATION, ACCESS_NETWORK_STATE, ACCESS_WIFI_STATE, CHANGE_NETWORK_STATE и CHANGE_WIFI_STATE.К сожалению, этот код сообщает мне только BSSID текущей подключенной сети, но я хотел бы получить его для всех доступных сетей.

Подробнее здесь: https://stackoverflow.com/questions/787 ... in-android

Вернуться в «C#»