Как ShareIt создает и настраивает точку доступа

Мне нужно динамически создать точку доступа Wi-Fi с определенными SSID и ПАРОЛЕМ в моем проекте приложения для Android. Я проверил мобильное приложение ShareIt, которое создает точку доступа с SSID и ПАРОЛЕМ, и получатель подключается к этой точке доступа, я ожидаю чего-то подобного.

Требование: приложение Android должно иметь возможность создавать точку доступа Wi-Fi с определенными SSID и ПАРОЛЕМ, которые получат с сервера.

 WifiManager wifimanager = (WifiManager) context.getSystemService(context.WIFI_SERVICE);
WifiConfiguration wificonfiguration = null;
try {
    wificonfiguration = new WifiConfiguration();
    wificonfiguration.SSID = apName;
    // if WiFi is on, turn it off
    if(isApOn(context)) {
        wifimanager.setWifiEnabled(false);
        // if ap is on and then disable ap
        disableAp(context);
    }
    Method method = wifimanager.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, boolean.class);
    method.invoke(wifimanager, wificonfiguration, true);
    return true;
}
catch (Exception e) {
    e.printStackTrace();
}

Я попробовал этот фрагмент кода, который выдает ошибку NoSuchMethodException.

Проверка Android версии 9 Pie

Любая помощь будет оценена.


person Binil    schedule 26.11.2019    source источник


Ответы (1)


Такое приложение, как ShareIt, создает точку доступа с помощью локальной точки доступа.

Но в этом случае Android создает точку доступа с ssid и паролем, которые мы не можем настроить (Android выбирает случайный ssid и пароль)

person Binil    schedule 03.12.2019