Я искал в стеке потока процесс сортировки списка по уровню сигнала (в библиотеке WifiManager это называется level
).Я видел, что вы можете использовать функцию Collection.sort()
.Тем не менее, я запутался, когда поставил тот факт, что хочу отсортировать список с помощью level
, где самое высокое число находится в начале, а самое низкое - внизу.
Как вы можете видеть, он возвращаетнесколько вещей в каждом объекте: https://developer.android.com/reference/android/net/wifi/ScanResult.html Я не настолько продвинут, но я знаю, что могу получить доступ к уровню, сделав что-то вроде этого
for (int i=0; i < scanList.size(); i++) {
System.out.println(scanList.get(i).level); // Prints the level for each access point
}
WifiManager myWifiManager;
myWifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
myWifiManager.startScan();
List<ScanResult> scanList = myWifiManager.getScanResults();
Collections.sort(scanList);