Czy system Android może obsługiwać sieci ad-hoc peer-to-peer?

95

Czy można skonfigurować Androida w trybie Wi-Fi ad-hoc peer-to-peer? Na przykład chciałbym, aby jeden telefon nadawał wiadomość i aby wszyscy rówieśnicy w sieci otrzymywali transmisję bez serwera. Chciałbym korzystać z Wi-Fi, ponieważ zasięg Bluetooth jest bardziej ograniczony.

Nalany
źródło
1
Czy mówisz o „Androidzie na Androida” czy „Androidzie na dowolny” (np. Na komputerze PC, Macu, iPhonie itp.)?
AlikElzin-kilaka
1
@Doughy, jeśli znalazłeś jakieś rozwiązanie, udostępnij.
nitin tyagi

Odpowiedzi:

62

Oto raport o błędzie dotyczący żądanej funkcji.

Status jest „sprawdzony”, ale nie sądzę, aby został jeszcze wdrożony.

http://code.google.com/p/android/issues/detail?id=82

Crowe T. Robot
źródło
21
Zagłosuj na ten błąd, każdy, kto interesuje się Ad Hoc na Androida - mam pomysł na aplikację, który jest znacznie trudniejszy z powodu braku ad hoc
SamStephens
14

Chociaż Android nie może znaleźć i połączyć się z sieciami ad-hoc, z pewnością może połączyć się z punktami dostępowymi. Aby obejść ten problem, możesz zmienić swoją kartę bezprzewodową w punkt dostępowy za pomocą na przykład Connectify .

Telmo Marques
źródło
3
Czy są dostępne inne narzędzia zgodne z systemem Windows XP?
Faiz
Najlepsza odpowiedź! To działało szybko i bezbłędnie. Connectify jest bardzo fajny.
Simon Gillbee,
1
Zainstalowanie tej aplikacji dało mi BlueScreen!
Õzbek
13

Mój przyjaciel i ja obecnie opracowujemy bibliotekę java implementującą protokół AODV (routing multihop odpowiedni dla sieci komórkowych), w naszej pracy licencjackiej. Końcowy „produkt” obejmuje łatwy sposób tworzenia / przyłączania się do sieci adhoc na kilku urządzeniach z systemem Android oraz interfejs poprzez bibliotekę do wysyłania i odbierania wiadomości. Niestety, każdy typ telefonu, taki jak hero, nexsus one ... ma zależny od telefonu sposób tworzenia sieci adhoc, więc obecnie obsługujemy tylko kilka telefonów).

Oznacza to, że po zakończeniu tego projektu osoby z telefonami z dostępem do roota mogą wdrażać swoje rozproszone aplikacje (udostępnianie plików, gry, ...), po prostu dołączając plik .jar biblioteki do swoich projektów na Androida.

Nawiasem mówiąc, to wszystko jest open source

http://code.google.com/p/adhoc-on-android/

Rabie Jradi
źródło
1
całkowicie zapomniałem o tym poście, przepraszam. Jeśli ktoś jest zainteresowany, właśnie oddaliśmy dzisiaj naszą pracę (napisaną w języku angielskim!) I chętnie podzielę się informacjami. Moja poczta to [email protected]
Rabie Jradi
1
Wgrałem kod źródłowy i dokumentację (raport) na code.google.com/p/adhoc-on-android
Rabie Jradi
czy jest jakieś wyjście dla innego urządzenia @RabieJradi?
gumuruh
Jeśli chcesz obsługiwać inne urządzenia, niestety jedynym sposobem jest zaimplementowanie wymaganych poleceń (zależy to od telefonu!) Do skonfigurowania i zerwania sieci ad-hoc i skompilowanie nowej biblioteki C na podstawie startstopadhoc.c ( plik, który chcesz zmodyfikować). Możesz znaleźć kod źródłowy tutaj: code.google.com/p/adhoc-on-android/source/browse/trunk/jni/… Jeśli masz szczęście, polecenia, które musisz wykonać, mogą być podobne do konfiguracji jako Nexus One , więc po prostu użycie istniejącej skompilowanej biblioteki C może być wszystkim, czego potrzebujesz.
Rabie Jradi
My w zasadzie dostał pomoc, aby dowiedzieć się, które polecenia są potrzebne do konfiguracji patrząc, że następujący projekt code.google.com/p/android-wifi-tether
Rabie Jradi
9

możesz podłączyć swoje urządzenie z Androidem do znanej sieci ad-hoc.

edytuj /system/etc/wifi/tiwlan.ini

WiFiAdhoc = 1
dot11DesiredSSID = <your_network_ssid>
dot11DesiredBSSType = 0 

edytuj /data/misc/wifi/wpa_supplicant.conf

ctrl_interface=tiwlan0
update_config=1
eapol_version=1
ap_scan=2

jeśli jest to zbyt uproszczone, zapoznaj się z tymi instrukcjami .

yanokwa
źródło
2
Działa to TYLKO z urządzeniami korzystającymi z implementacji WIFI firmy Texas Instruments i NIE działa bez uprawnień roota i nie działa na każdym urządzeniu.
Kevin Parker
7

Obsługa sieci WiFi typu peer to peer jest dostępna od poziomu interfejsu API 14 .

CGK
źródło
2
Zwróć uwagę, że istnieje wiele błędów załadowanych dla interfejsu WiFi P2P API. 25397 26418 26483
Calvin
1
Myślę, że działa tylko na urządzeniach Wifi Direct. Ponieważ jest to nowa funkcja sprzętowa dostępna obecnie tylko w telefonach, nie możemy jej używać do łączenia się z laptopami.
abat
4

Używanie JmDNS na Androidzie może działać: http://jmdns.sourceforge.net/

Istnieje mnóstwo maszyn obsługujących zeroconf, więc umożliwiłoby to wykrywanie nie tylko urządzeń z Androidem.


źródło
1
Chociaż ten link jest bardzo przydatny, w ogóle nie odpowiada na pytanie. ZeroConf DNS! = Bezprzewodowy Ad Hoc.
Kevin Parker
3

Możesz użyć platformy Alljoyn do łączności peer-to-peer w systemie Android. Opiera się na sieci Ad-hoc, a także na Open source.

Selvakumar
źródło
przykład jest trudny do zrozumienia @Selva Już analizowałem kod źródłowy alljoyn.
gumuruh
2

Nie sądzę, aby zapewniało wieloprzeskokowe środowisko bezprzewodowego routingu pakietów. Możesz jednak spróbować zintegrować prosty mechanizm routingu. Po prostu sprawdź Wi-Share, aby dowiedzieć się, jak to zrobić.

jaxvy
źródło
koncepcja jest fajna, ale kodu nie ma ... @jaxvy
gumuruh.
1

Tak, ale:
1. zrootuj swoje urządzenie (jeśli masz Nexusa S tak jak ja, zobacz to )
2. zainstaluj eksploratora roota (szukaj na rynku)
3. znajdź odpowiedni plik wpa_supplcant i zamień (i wykonaj kopię zapasową) oryginał, jak pokazano na ten wątek

powyżej został przetestowany na moim Nexus S I9023 Android 2.3.6

kreker
źródło
cóż, to fajne @kreker ... więc możesz używać wifi peer to peer używając Androida 2.3? dobry! Czy możesz udostępnić nam samouczek?
gumuruh
@gumuruh moja odpowiedź to tutorial
kreker
0

Oprócz odpowiedzi Telmo Marques: używam do tego Virtual Router .

Podobnie jak connectify, tworzy punkt dostępu na komputerze z systemem Windows 8, Windows 7 lub 2008 R2, ale jest to oprogramowanie typu open source.

Mene
źródło