2011-06-27 10 views
5

Mam problem, który dokuczał mi w ekstremalny sposób w ciągu ostatnich kilku dni. Chciałbym napisać skrypt sh Android, które wykonuje następujące (mi pomóc synchronizować muzykę, fotki itp):Problemy z skryptem Androida Wi-Fi

1) Włącz wifi (wifi jest domyślnie wyłączony w celu oszczędzania energii)

2) sprawdzić, czy moje połączenie wifi jest w przedziale (pozwala wywołać myWifi)

3) Jeżeli myWifi nie jest w zasięgu, wyłączyć WiFi, jeżeli znajduje się w zasięgu, podłączyć i zacząć trochę synchronizacji oprogramowania

teraz, aby umożliwić/disable wifi, używam następującego polecenia, które wymaga root:

svc wifi enable/disable

Aby wyszukać dostępnej połączeń WiFi, używam następujące polecenia:

iwlist eth0 scan

Strage rzeczą jest to, że iwlist eth0 scan będzie działać tylko jeśli nie jestem zalogowany jako administrator (jestem bardzo ciekaw dlaczego tak jest, jeśli ktoś wie coś), uruchomienie go natomiast korzeń powróci?

eth0: Interface doesn't support scanning : Invalid argument

ale Uruchomienie go, gdy nie jesteś zalogowany jako root, dostarczy mi potrzebnych informacji. Próbowałem różnych podejść, aby obejść ten problem. Najbardziej oczywiste jest zalogowanie się jako użytkownik standardowy w systemie Android tuż przed wywołaniem iwlist polecenie:

su -c app_1

Jednak każde polecenie, które polega na su powróci permission denied nawet podczas wywoływania go jako root, a od sudo nie istnieje w systemie Android, czuję się tutaj dość zagubiony. Próbowałem również obejść, dzieląc skrypt na dwie części i próbując uruchomić pierwszy jako root, a drugi jako root (domyślny użytkownik w Androidzie i aplikacji_1), ale to tylko opóźni problem ...

Jeśli ktoś ma odpowiedź na pytanie, jak obejść ten problem, lub jak korzystać z iwlist eth0 scan (lub innego polecenia, które robi to samo) po zalogowaniu jako root, byłbym bardzo wdzięczny.

Dziękuję.

+0

Jaką wersję telefonu bezprzewodowego (numer) .h używałeś? – NoBugs

+0

Przykro mi, ale nie pamiętam i obawiam się, że skrypt zaginął ze starym telefonem Nexus. Zacząłem używać Google Music zamiast powyższego skryptu. – AHaahr

Odpowiedz

0

Zgodnie z informacjami przedstawionymi przez man iwlist zwykli użytkownicy mogą zobaczyć tylko niektóre wyniki skanowania po lewej stronie. Aby rozpocząć nowe skanowanie jako root, musisz najpierw uruchomić interfejs (po uruchomieniu wifi):

ifconfig wlan0 up 
Powiązane problemy