Я пишу приложение для Android, которое должно подключаться к различным сетям Wifi в зависимости от выбора пользователя.Мне нужно получить IP-адрес шлюза из networkInfo.Проблема, с которой я сталкиваюсь, заключается в том, что, если я подключен к конфигурации сети Wi-Fi A, а затем хочу переключиться на конфигурацию сети B, wifi.getDhcpInfo ();возвращает к IP-адресу шлюза сети A. После нескольких попыток выполнения рабочего процесса интерфейса пользователя в конечном итоге возвращается IP-адрес шлюза сети B. Фрагмент кода приведен ниже.Любые идеи, как определить, когда вновь включенная сеть выдаст точную информацию Dhcp, чтобы я мог получить ее надежно.Есть ли асинхронное событие, которое я могу поймать, например, и т. Д. Спасибо.
WifiConfiguration config = wifiConfiguredNetworks.get(SSID);
enableNetworkResult = false;
enableNetworkResult = wifi.enableNetwork(config.networkId,true);
if (enableNetworkResult == true) {
this.networkInfo = wifi.getDhcpInfo(); // does not return proper IP info
this.DeviceIP = android.text.format.Formatter.formatIpAddress(networkInfo.gateway);
}