Я пытаюсь реализовать функцию, при которой приложение должно автоматически подключаться к Wi-Fi моего офиса, когда этот конкретный WiFi находится в зоне действия (даже когда приложение отключено).
Я попробовал следующий код
val wifiManager = context?.applicationContext?.getSystemService(Context.WIFI_SERVICE) as WifiManager
if (wifiManager.connectionInfo.ssid != "SampleWIFI")
{
wifiManager.scanResults.firstOrNull {
it.SSID == "SampleWIFI"
}?.apply {
val wifiConfiguration = WifiConfiguration()
wifiConfiguration.SSID = String.format("\"$SSID\"")
wifiConfiguration.preSharedKey = String.format("\"WifiPassword@@\"")
val netId = wifiManager.addNetwork(wifiConfiguration)
wifiManager.disconnect()
wifiManager.enableNetwork(netId,true)
wifiManager.reconnect()
}
}
Это работает нормально. Но как заставить это работать, когда вы закрываете приложение? Есть ли какой-нибудь широковещательный приемник, который будет срабатывать, когда новый SSID находится в диапазоне / обнаружен?