O Android pode fazer rede ad-hoc ponto a ponto?

95

É possível configurar o Android no modo wi-fi ad-hoc ponto a ponto? Por exemplo, eu gostaria que um telefone transmitisse uma mensagem e todos os pares da rede recebessem a transmissão, sem ter um servidor. Gostaria de usar wi-fi, pois o alcance do bluetooth é mais limitado.

Pastoso
fonte
1
Você está falando de "Android para Android" ou "Android para qualquer" (como pc, mac, iphone, etc.)?
AlikElzin-kilaka de
1
@Doughy se você encontrou alguma solução, por favor, compartilhe.
nitin tyagi

Respostas:

62

Aqui está um relatório de bug sobre o recurso que você está solicitando.

Seu status é "revisado", mas não acredito que tenha sido implementado ainda.

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

Crowe T. Robot
fonte
21
Vote neste bug, qualquer pessoa que tenha interesse em Ad Hoc no Android - eu tenho uma ideia de aplicativo que é muito mais complicada por causa da falta de ad hoc
SamStephens
14

Embora o Android não consiga encontrar e se conectar a redes ad-hoc, com certeza pode se conectar a pontos de acesso. Portanto, como uma solução alternativa, você pode transformar sua placa sem fio em um ponto de acesso usando, por exemplo, Connectify .

Telmo Marques
fonte
3
Alguma outra ferramenta compatível com o Windows XP disponível?
Faiz
Melhor resposta! Isso funcionou de forma rápida e perfeita. Connectify é muito legal.
Simon Gillbee,
1
A instalação deste aplicativo me deu o BlueScreen!
Õzbek
13

meu amigo e eu estamos atualmente desenvolvendo uma biblioteca java implementando o protocolo AODV (roteamento multihop adequado para redes móveis), em nossa tese de bacharelado. O 'produto' final inclui uma maneira fácil de criar / ingressar em uma rede adhoc em vários dispositivos Android e uma interface por meio da biblioteca para enviar e receber mensagens. Infelizmente, cada tipo de telefone, como hero, nexsus one ... tem uma maneira separada por telefone para criar uma rede adhoc, portanto, atualmente, oferecemos suporte apenas a alguns telefones.

isso significa que, uma vez que o projeto esteja concluído, as pessoas com telefones enraizados podem implementar seus aplicativos distribuídos (compartilhamento de arquivos, jogos, ...) simplesmente incluindo o arquivo .jar da biblioteca em seus projetos Android.

é tudo open source por sinal

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

Rabie Jradi
fonte
1
esqueci totalmente este post, desculpe. Se alguém estiver interessado, acabamos de entregar nossa tese hoje (escrita em inglês!), E ficaria feliz em compartilhar informações. Meu e-mail é [email protected]
Rabie Jradi
1
Fiz upload do código-fonte e da documentação (um relatório) para code.google.com/p/adhoc-on-android
Rabie Jradi
existe alguma saída para outro dispositivo @RabieJradi?
gumuruh
Se você quiser oferecer suporte a outros dispositivos, a única maneira de fazer isso, infelizmente, é implementar os comandos necessários (depende do telefone!) Para configurar e derrubar uma rede ad-hoc e compilar uma nova biblioteca C baseada em startstopadhoc.c ( o arquivo que você precisa modificar). Você pode encontrar o código-fonte aqui: code.google.com/p/adhoc-on-android/source/browse/trunk/jni/… Se você tiver sorte, os comandos que você precisa executar podem ser semelhantes à configuração do Nexus One , então simplesmente usar a biblioteca C compilada existente pode ser tudo de que você precisa.
Rabie Jradi
Basicamente, conseguimos ajuda para descobrir quais comandos são necessários para a configuração observando o seguinte projeto code.google.com/p/android-wifi-tether
Rabie Jradi
9

você pode conectar seu dispositivo Android a uma rede ad-hoc conhecida.

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

se for muito simplista, consulte estas instruções .

yanokwa
fonte
2
Isso funciona SOMENTE com dispositivos que usam uma implementação WIFI da Texas Instruments e NÃO funciona sem root e não funciona em todos os dispositivos.
Kevin Parker
7

O suporte para rede WiFi ponto a ponto está disponível desde o nível 14 da API .

CGK
fonte
2
Observe que há vários bugs carregados para a API WiFi P2P. 25397 26418 26483
Calvin
1
Acho que funciona apenas em dispositivos Wifi Direct. Como é um novo recurso de hardware que está disponível apenas em telefones atualmente, não podemos usá-lo para conectar a laptops.
abat de
4

Pode funcionar usar JmDNS no Android: http://jmdns.sourceforge.net/

Existem toneladas de máquinas habilitadas para zeroconf por aí, então isso permitiria a descoberta com mais do que apenas dispositivos Android.


fonte
1
Embora este link seja muito útil, ele não responde à pergunta de forma alguma. ZeroConf DNS! = Ad Hoc wireless.
Kevin Parker
4

Sua resposta é Wi-Fi direto, disponibilizado com o ICS. Aqui está um link para explicação no documento Android

fatih
fonte
3

Você pode usar a estrutura Alljoyn para conectividade ponto a ponto no Android. É baseado em rede Ad-hoc e também em código aberto.

Selvakumar
fonte
o exemplo é difícil de entender @Selva Já analiso o código fonte do alljoyn aí.
gumuruh
2

Não acho que ele forneça um ambiente de roteamento de pacotes sem fio multi-hop. No entanto, você pode tentar integrar um mecanismo de roteamento simples. Basta verificar o Wi-Share para ter uma ideia de como isso pode ser feito.

Jaxvy
fonte
o conceito é bom, mas o código não está lá ... @jaxvy
gumuruh
1

Sim, mas:
1. faça o root do seu dispositivo (caso você tenha Nexus S como eu, veja isto )
2. instale o root explorer (pesquise no mercado)
3. encontre o arquivo wpa_supplcant apropriado e substitua (e faça backup) o original, conforme mostrado em este tópico

acima foi testado em meu Nexus S I9023 android 2.3.6

Kreker
fonte
bem, isso é bom @kreker ... então você poderia usar wi-fi ponto a ponto usando o Android 2.3? Boa! Você poderia compartilhar o tutorial para nós?
gumuruh
@gumuruh minha resposta é tutorial
kreker
0

Além da resposta do Telmo Marques: Para isso utilizo o Roteador Virtual .

Assim como o Connectify, ele cria um ponto de acesso em sua máquina Windows 8, Windows 7 ou 2008 R2, mas é de código aberto.

Mene
fonte