Сканирование всех устройств wifi рядом с телефоном

компания http://renewlondon.com/ есть терминальные станции, которые собирают все рядом с mac-адресами

enter image description here

могу ли я через iOS SDK и Android SDK сделать то же самое?

2 ответов


вы можете получить доступ к данным wifi с помощью "WifiManager" и после сканирования scanresult содержит все данные, как

МАС-адрес адрес точки доступа.

SSID имя сети.

возможности описывает схемы аутентификации, управления ключами и шифрования, поддерживаемые точкой доступа.

частота частота в Мгц канала, по которому клиент связывается с точкой доступа.

уровень уровень обнаруженного сигнала в дБм.

метка отметка времени функции синхронизации времени (tsf) в микросекундах, когда этот результат был замечен в последний раз.

об устройствах wifi. если вам нужно больше связано с кодированием, я думаю, что могу вам помочь...

пример кода

WifiManager wManager;
List<ScanResult> wifiList; 

wManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
// Inside BroadcastReceiver()
wifiList = wManager.getScanResults();
for (int i=0; i<wifiList.size(); i++){
     ScanResult scanresult = wifiList.get(i);                        
     System.out.println("SSID: "+ssid);
     System.out.println("RSSI: "+scanresult.level);
     System.out.println("Frequency: "+scanresult.frequency);
     System.out.println("BSSID: "+scanresult.BSSID);
     System.out.println("Capability: "+scanresult.capabilities);
}

также проверьте BroadcastReceiver ().


один из способов сделать это-сделать ваше устройство точкой доступа wifi и использовать скрытый api для обнаружения устройств.Вы в основном пытаетесь имитировать точку доступа.

в противном случае каждому устройству понадобилась бы какая-то p2p-платформа на них-либо wifi direct on или какая-то другая структура, такая как alljoyn или samsung chord, которая помогает в одноранговом обнаружении