В WiFi сети нет доступа в интернет - так специально.
Решение нашёл.
Сперва запрашиваем доступ на использование wifi -
val networkRequest = NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.removeCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.setNetworkSpecifier(
WifiNetworkSpecifier.Builder()
.setSsid(ssid)
.setWpa2Passphrase(pass)
.build()
)
.build()
...
После запрашиваем доступ на использование интернета
и используем его для проверки доступа
val request = NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR)
.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.build()
_cm.registerNetworkCallback(request, object : ConnectivityManager.NetworkCallback() {
override fun onAvailable(network: Network) {
if (server_test(network))
_cm.bindProcessToNetwork(network)
LogUtils.i("onAvailable")
}
}
...
В итоге имеем Wifi - ip через broadcast
и доступ в сеть
доступ в сеть после доступна на всём устройстве - ранее же, на всём Android устройстве сеть блочилась и ничего не работало.