Od jakiegoś czasu pojawiały się regularnie pytania jak połączyć się sieciami AdHoc, rozwiązania które można znaleźć w internecie, oczywiście na GT540 nie chciały działać, a aplikacja Connectify jest tylko na Windows 7, zresztą wszystkich kart WiFi też nie obsługiwała.
Problem więc BYŁ, ale już nie jest - w końcu po przekopaniu dokumentacji udało Mi się połączyć z siecią AdHoc, i myślę, że warto się tym podzielić z innymi.
Rozwiązanie nie jest może idealne, ale za to działa i myślę, że może się niektórym przydać.
Co potrzebujemy?
- Android 2.1 (nie testowałem na 1.6 ale w teorii powinno działać),
- zrootowany telefon,
- Android SDK, albo Root Explorer, czy coś innego co pozwoli na dostęp do plików systemowych.
Pierwsze co to musimy dostać się do pliku wpa_supplicant.conf
Jeśli chcemy zrobić to z komputera - wpisujemy:
adb pull /data/misc/wifi/wpa_supplicant.conf wpa_supplicant.conf
W Root Explorer przechodzimy po prostu do wpa_supplicant.conf.
Teraz nasz plik musimy edytować -> ogólnie wszystko polega na kilku zmianach:
update_config=1 zmieniamy na
update_config=0
(o tym trochę szerzej napisze później)
poniżej update_config dopisujemy linijkę:
ap_scan=2
teraz tworzymy pozycję dla naszej sieci:
network={
ssid="nazwa sieci"
scan_ssid=1
key_mgmt=NONE
}
Teraz tylko plik zapisujemy, i jeśli używaliśmy adb -wrzucamy go komendą:
adb push wpa_supplicant.conf /data/misc/wifi/wpa_supplicant.conf
Ogólnie cały plik powinien wyglądać mniej więcej tak:
ctrl_interface=/data/system/wpa_supplicant
ctrl_interface_group=system
update_config=0
ap_scan=2
network={
ssid="Nazwa sieci"
scan_ssid=1
mode=1
key_mgmt=NONE
priority=1
}
Możemy teraz włączyć wifi, a nasza sieć powinna zostać wykryta.
Jednak jakie są minusy tego rozwiązania:
- po pierwsze update_config=0 powoduję, że plik nie będzie automatycznie aktualizowany (co powoduje jego nadpisywanie i usuwanie tego co wpisujemy) - tym samym nie zostaną zapamiętane sieci z którymi się łączyliśmy, i hasła do nich- z drugiej strony jeśli łączy się do 'sieci otwartych' nie powinno to stanowić problemu.
- po drugie - nie wiem jak u innych, ale u mnie przy każdym włączeniu wifi, telefon próbuje się połączyć z siecią adhoc jednak po chwili się rozłącza, więc niby to nie przeszkadza, ale wygląda dość dziwnie.
- w moim przykładzie łączyłem się tylko z siecią niezabezpieczoną, w przypadku zabezpieczonych trzeba pogrzebać przy key_mgmt, ale o tym już jest sporo w internecie.
PS: Mam nadzieję, że wybrałem dobry dział 🙂