Подключиться к определенной сети в Android

Я пытаюсь создать приложение для Android, которое подключается к сети ресторана и получает меню и цены (Wi-Fi). Но когда я открываю приложение, я хочу перечислить сети Wi-Fi, зарегистрированные в этом приложении, а не все доступные сети. Есть ли способ построить это? Заранее спасибо.


person user6739649    schedule 17.09.2016    source источник


Ответы (1)


Да, вы можете сканировать доступные сети Wi-Fi и показывать пользователю только некоторые из них. Представьте эти сети в ListView, и когда пользователь нажмет на один элемент, вы подключитесь к нему.

Вы получаете доступные сети в onReceive, и здесь вы можете выбрать любое свойство ScanResult класс:

private class WifiScanReceiver extends BroadcastReceiver {
    public void onReceive(Context c, Intent intent) {
        List<ScanResult> wifiScanList = wifi.getScanResults();
        for (ScanResult wifi : wifiScanList) {
            // add wifi here to your own list depending on any property of ScanResult, e.g.:
            if (wifi.SSID.contains("Restaurant")) {
               ...
            }
        }
    }
}
person gus27    schedule 17.09.2016
comment
Спасибо за Ваш ответ. Как я могу указать условия для выбора сети. Например, есть приложение под названием Xender (локальное приложение для обмена файлами), в котором, если вы выберете вариант получения, вы увидите только другие сети Xender. Я хочу создать что-то подобное. Как я могу это реализовать? Заранее спасибо. - person user6739649; 17.09.2016
comment
Я обновил свой ответ. Вы можете указать условия для любого свойства класса ScanResult. - person gus27; 17.09.2016