¿Puede Android hacer redes ad-hoc peer-to-peer?

95

¿Es posible configurar Android en modo wifi peer-to-peer ad-hoc? Por ejemplo, me gustaría que un teléfono transmita un mensaje y que todos los pares de la red reciban la transmisión, sin tener un servidor. Me gustaría usar wifi ya que el alcance de bluetooth es más limitado.

Pastoso
fuente
1
¿Estás hablando de "Android a Android" o "Android a cualquier" (como pc, mac, iphone, etc.)?
AlikElzin-kilaka
1
@Doughy, si encontró alguna solución, compártala.
nitin tyagi

Respuestas:

62

Aquí hay un informe de errores sobre la función que solicita.

Su estado es "revisado" pero no creo que se haya implementado todavía.

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

Crowe T. Robot
fuente
21
Por favor vote este error, cualquiera que tenga interés en Ad Hoc en Android - Tengo una idea de aplicación que es mucho más complicada debido a la falta de ad hoc
SamStephens
14

Aunque Android no puede encontrar y conectarse a redes ad-hoc, seguro que puede conectarse a puntos de acceso. Entonces, como solución temporal, puede convertir su tarjeta inalámbrica en un punto de acceso utilizando, por ejemplo, Connectify .

Telmo Marques
fuente
3
¿Hay otras herramientas compatibles con Windows XP disponibles?
Faiz
¡La mejor respuesta! Esto funcionó de manera rápida e impecable. Connectify es muy bueno.
Simon Gillbee
1
¡La instalación de esta aplicación me dio BlueScreen!
Õzbek
13

mi amigo y yo estamos desarrollando una biblioteca java que implementa el protocolo AODV (enrutamiento multisalto adecuado para redes móviles), en nuestra tesis de licenciatura. El 'producto' final incluye una manera fácil de crear / unirse a una red ad hoc en varios dispositivos Android y una interfaz a través de la biblioteca, para enviar y recibir mensajes. Desafortunadamente, cada tipo de teléfono como hero, nexsus one ... tiene una forma dependiente del teléfono para crear una red ad hoc, por lo que actualmente solo admitimos algunos teléfonos).

esto significa que una vez finalizado este proyecto, las personas con teléfonos rooteados pueden implementar sus aplicaciones distribuidas (intercambio de archivos, juegos, ...) simplemente incluyendo el archivo .jar de la biblioteca en sus proyectos de Android.

todo es de código abierto por cierto

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

Rabie Jradi
fuente
1
Olvidé totalmente esta publicación, lo siento. Si alguien está interesado, acabamos de entregar nuestra tesis hoy (¡escrita en inglés!), Y estaría encantado de compartir información. Mi correo es [email protected]
Rabie Jradi
1
Subí el código fuente y la documentación (un informe) a code.google.com/p/adhoc-on-android
Rabie Jradi
¿Hay alguna salida para otro dispositivo @RabieJradi?
gumuruh
Si desea admitir otros dispositivos, desafortunadamente, la única forma de hacerlo es implementar los comandos necesarios (¡depende del teléfono!) Para configurar y derribar una red ad-hoc y compilar una nueva biblioteca C basada en startstopadhoc.c ( el archivo que necesita modificar). Puede encontrar el código fuente aquí: code.google.com/p/adhoc-on-android/source/browse/trunk/jni/… Si tiene suerte, los comandos que necesita ejecutar pueden ser similares a la configuración de Nexus One , por lo que simplemente usar la biblioteca C compilada existente puede ser todo lo que necesita.
Rabie Jradi
Básicamente, obtuvimos ayuda para averiguar qué comandos se necesitan para la configuración al buscar en el siguiente proyecto code.google.com/p/android-wifi-tether
Rabie Jradi
9

puede conectar su dispositivo Android a una red ad-hoc conocida.

editar /system/etc/wifi/tiwlan.ini

WiFiAdhoc = 1
dot11DesiredSSID = <your_network_ssid>
dot11DesiredBSSType = 0 

editar /data/misc/wifi/wpa_supplicant.conf

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

si eso es demasiado simplista, consulte estas instrucciones .

Yanokwa
fuente
2
Esto SÓLO funciona con dispositivos que utilizan una implementación WIFI de Texas Instruments y NO funciona sin root, y no funciona en todos los dispositivos.
Kevin Parker
7

El soporte para redes WiFi peer to peer está disponible desde el nivel 14 de API .

CGK
fuente
2
Solo tenga en cuenta que hay varios errores cargados para WiFi P2P API. 25397 26418 26483
Calvin
1
Creo que solo funciona en dispositivos Wifi Direct. Como es una nueva función de hardware que solo está disponible en teléfonos en estos días, no podemos usarla para conectarnos a computadoras portátiles.
abat
4

Podría funcionar usar JmDNS en Android: http://jmdns.sourceforge.net/

Hay toneladas de máquinas habilitadas para zeroconf, por lo que esto permitiría el descubrimiento con más que dispositivos Android.


fuente
1
Aunque este enlace es muy útil, no responde la pregunta en absoluto. ZeroConf DNS! = Ad Hoc inalámbrico.
Kevin Parker
4

Su respuesta es Wi-Fi directo que está disponible con ICS. Aquí hay un enlace para una explicación en el documento de Android

fatih
fuente
3

Puede utilizar el marco de Alljoyn para la conectividad Peer-to-Peer en Android. Se basa en redes Ad-hoc y también en código abierto.

Selvakumar
fuente
el ejemplo es difícil de entender @Selva Ya analizo el código fuente de alljoyn allí.
gumuruh
2

No creo que proporcione un entorno de enrutamiento de paquetes inalámbrico de múltiples saltos. Sin embargo, puede intentar integrar un mecanismo de enrutamiento simple. Solo echa un vistazo a Wi-Share para tener una idea de cómo se puede hacer.

jaxvy
fuente
el concepto es bueno, pero el código no está ahí ... @jaxvy
gumuruh
1

Sí, pero:
1. rootee su dispositivo (en caso de que tenga Nexus S como yo, vea esto )
2. instale el explorador raíz (busque en el mercado)
3. busque el archivo wpa_supplcant apropiado y reemplace (y haga una copia de seguridad) original como se muestra en este hilo

anterior fue probado en mi Nexus S I9023 android 2.3.6

kreker
fuente
bueno, eso es bueno @kreker ... ¿entonces podrías usar wifi peer to peer usando Android 2.3? ¡bueno! ¿Podrías compartirnos el tutorial?
gumuruh
@gumuruh mi respuesta es tutorial
kreker
0

Además de la respuesta de Telmo Marques: uso un enrutador virtual para esto.

Al igual que connectify, crea un punto de acceso en su máquina con Windows 8, Windows 7 o 2008 R2, pero es de código abierto.

Mene
fuente