Почему getBSSID () всегда возвращает «02: 00: 00: 00: 00: 00»? - PullRequest
0 голосов
/ 08 марта 2020

«02: 00: 00: 00: 00: 00» означает, что у вызывающей стороны недостаточно прав для доступа к BSSID. Почему у меня недостаточно разрешений? Вводя неверный или правильный пароль, всегда возвращается «02: 00: 00: 00: 00: 00». Даже если я жду, пока соединение не будет установлено, оно всегда возвращает одно и то же значение. У меня также есть разрешения, установленные в AndroidManifest. xml:

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" android:required="true" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

И это Java Код:

WifiConfiguration wifiConfig = new WifiConfiguration();
String ssid = "AndroidAPC572";
wifiConfig.preSharedKey = String.format("\"%s\"", "password");
WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
int netId = wifiManager.addNetwork(wifiConfig);
boolean disconnected = wifiManager.disconnect();
wifiManager.enableNetwork(netId, true);
boolean reconnected = wifiManager.reconnect();
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
wifiInfo.getBSSID(); //always "02:00:00:00:00:00" / insufficient permission
...