domingo, 5 de maio de 2013

Deploy/Debug via Wi-Fi no Android

Olá povo,

Recebi essa semana uma dúvida muito interessante do meu colega Kennedy Ximenes me perguntando se era possível fazer deploy de aplicações Android, em um dispositivo real, sem a necessidade do cabo USB. Fui pequisar e achei a solução aqui. O procedimento é bem simples e vou mostrar para vocês aqui.

Parto do pressuposto que você já consegue depurar a aplicação via USB, então você já deve possuir Google USB Driver e estar com a depuração USB habilitada nas configurações do aparelho. Feito isso, abra o terminal e vá até o diretório ANDROID_SDK/platform-tools (onde ANDROID_SDK é o diretório onde está instalado o SDK do Android). Conecte seu dispositivo via USB (é, você vai precisar do cabo nessa etapa). Depois é só digitar:

./adb tcpip 5555

Estamos habilitando o ADB para aceitar conexão via TCP através da porta 5555. O resultado deve ser como abaixo.

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
restarting in TCP mode port: 5555

Depois é só conectar-se ao aparelho digitando o seguinte comando.

./adb connect 192.168.25.2:5555

Troque o endereço acima pelo IP do seu aparelho na rede Wi-Fi. Você pode checar o número IP do aparelho em Configurações > Sobre > Status. Se tudo sair bem, você receberá a mensagem abaixo:
connected to 192.168.25.2:5555

Para testar, digite:

./adb devices

Se estiver tudo ok, seu aparelho será listado como abaixo.

List of devices attached 
192.168.25.2:5555 device

Agora é só ir no Eclipse e mandar executar sua aplicação, que ela será executada magicamente no aparelho :) Obviamente também é possível fazer o debug (is on the table) da mesma.

Para voltar ao modo USB, use o comando:

./adb usb

E depois desconectamos usando o comando:

./adb disconnect 192.168.25.2:5555

4br4ç05,
nglauber

Fonte: Tech And Stuff
http://stuffandtech.blogspot.com.br/2012/03/android-quick-tip-adb-over-wifi.html


5 comentários:

Eric Braga disse...

Só um detalhe: Mesmo fazendo um adb disconnect o modo usb não é ativado. Isto quer dizer que quando colocar o cabo usb no telefone ele não vai funcionar (o adb devices vai retornar o dispositivo mostrando que o mesmo está off-line).

Por isto é melhor fazer um adb usb antes de um adb disconnect para que o telefone possa reiniciar o adb em modo usb.

Nelson Glauber disse...

Oi Eric,

Valeu pela dica! Ajustei o post.

4br4ç05,
nglauber

Maxwell Farias do Nascimento disse...

Funciona que é uma beleza!

Unknown disse...

Fiz o mesmo procedimento mas compilo pelo Android Studio e só consigo se eu ativar o app Wifi ADB no meu celular, caso contrário, não aparece nada na lista do "Device chooser".

Anônimo disse...

É bom avisar que depois de desconectar o cabo usb tem que conectar o adb de novo para funcionar via wi-fi. abraços.