W mojej aplikacji Android Używam następujący fragment kodu:Zmiana dostępu do sieci WiFi oraz hasło w Android Oreo 8.x
@RequiresApi(api = Build.VERSION_CODES.O)
private void turnOnHotspot(){
WifiManager manager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
manager.startLocalOnlyHotspot(new WifiManager.LocalOnlyHotspotCallback(){
@Override
public void onStarted(WifiManager.LocalOnlyHotspotReservation reservation) {
super.onStarted(reservation);
Log.d(TAG, "Wifi Hotspot is on now");
}
@Override
public void onStopped() {
super.onStopped();
Log.d(TAG, "onStopped: ");
}
@Override
public void onFailed(int reason) {
super.onFailed(reason);
Log.d(TAG, "onFailed: ");
}
},new Handler());
}
Ten fragment kodu tworzy hotspot nazwie coś jak „AndroidShare_1234”. W przypadku mojego projektu muszę mieć możliwość ustawienia hasła i identyfikatora SSID dla tego hotspotu, jednak nie mogę znaleźć sposobu, aby to zrobić. Chciałbym utworzyć hotspot z identyfikatorem SSID, takim jak MyHotspot
i niestandardowym hasłem.
Pamiętaj, że setWifiApEnabled
nie jest już obsługiwany w Androidzie O, tak dzieje się w starszych wersjach Androida. Jednak nadal potrzebuję programowo utworzyć hotspot WiFi z identyfikatorem SSID i hasłem. Nie mogę wymyślić, jak to zrobić. Z góry dziękuję!
Dla kogo to obchodzi ...:
Dla szkolnego projektu zrobiłem szafkę, który otwiera, gdy może połączyć się z siecią bezprzewodową z pewnymi cridentials, stąd potrzeba ustawiania hotspot programowo.
Nie mam dla ciebie odpowiedzi, ale czy rozważałeś użycie Bluetooth do przeprowadzenia uwierzytelnienia lub do opublikowania identyfikatora SSID? – nitzanms
Należy zauważyć, że zgodnie z dokumentacją '' startLocalOnlyHotspot'' hotspot może być współużytkowany przez kilka aplikacji. Oznacza to, że modyfikacja identyfikatora SSID prawdopodobnie nie będzie oficjalnie obsługiwana. – nitzanms