Android Q - подключиться к сети WEP с помощью WifiNetworkSpecifier.builder () - PullRequest
1 голос
/ 29 июня 2019

Я пытаюсь подключиться к сети WEP, используя последнюю версию Android Q Beta 4.

Старый стиль общения был довольно простым. Используя что-то вроде:

WifiConfiguration connection = createApConfiguration(ssid, password, "WEP");
int res = wifiManager.addNetwork(connection);

Однако в выпуске Q это устарело. https://developer.android.com/reference/android/net/wifi/WifiManager.html#addNetwork(android.net.wifi.WifiConfiguration)

Мне нужно подключиться к сети "WEP", и я не вижу никакой возможности установить такую ​​конфигурацию. Последняя версия API приведена ниже.

val specifier = WifiNetworkSpecifier.Builder()
.setSsid("NetworkID")
.setIsHiddenSsid(false)
.setIsEnhancedOpen(false)
.setBssidPattern(MacAddress.fromString("10:03:23:00:00:00"), MacAddress.fromString("ff:ff:ff:00:00:00"))
.build()

val request = NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.removeCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.setNetworkSpecifier(specifier)
.build()

val connectivityManager = this.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager

val networkCallback = object : ConnectivityManager.NetworkCallback() {

override fun onAvailable(network: Network?) {
Log.d("AVAILABLE", "onAvailable")
}

override fun onUnavailable() {
Log.d("UNAVAILABLE", "onUnavailable")
}}

connectivityManager.requestNetwork(request, networkCallback)

Android Q Beta 5 позволяет мне выбирать тип WEP для экрана основных настроек, поэтому я не понимаю, почему API не предоставляют такую ​​возможность?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...