Buscar

Dispositivos

ADB não reconhece dispositivo: correções para emuladores

Corrija adb not working, dispositivo não encontrado e offline no BlueStacks, LDPlayer, MuMu, MEmu e Nox no MAS, com os comandos adb que você mesmo pode rodar.

  • Windows
  • Mac
  • Emulador
  • Celular
  • Studio
Intermediário Atualizado em 8 min de leitura
Nesta página
  1. Como o MAS usa o adb
  2. Confira a conexão você mesmo
  3. Onde fica a opção de ADB
  4. BlueStacks ADB not working e outros erros de emulador
  5. O ADB não funciona
  6. ADB não reconhece o dispositivo
  7. O dispositivo aparece como offline
  8. Porta ADB errada ou alterada
  9. Várias instâncias
  10. adb no Mac
  11. Quais portas ADB de emulador o MAS escaneia
  12. Ainda travado

Todo dispositivo local no Macro Automation Studio (MAS) é uma conexão adb com 127.0.0.1:<port>. Quando o adb não reconhece o dispositivo e ele não inicia, a causa quase sempre é um de poucos problemas, e as mesmas correções valem para BlueStacks, LDPlayer, MuMu Player, MEmu e Nox. Esta página lista todos eles com os comandos que você mesmo pode rodar.

Como o MAS usa o adb

Conhecer a sequência torna os erros legíveis. Quando você clica em Iniciar em um dispositivo, o MAS:

  1. Roda adb start-server com o próprio adb.
  2. Lista os dispositivos com adb devices -l. Se a sua porta já estiver listada, ele a desconecta primeiro.
  3. Roda adb connect 127.0.0.1:<port> e lê a saída. Qualquer um entre “cannot connect”, “failed to connect”, “unable to connect”, “connection refused” ou “bad port” faz o dispositivo falhar com “unable to connect to device”.
  4. Envia todos os comandos seguintes como adb -s 127.0.0.1:<port> shell ...: toques, deslizes, screencap para capturas de tela, wm size para o tamanho da tela.
  5. Roda adb kill-server quando o app fecha.

No Windows, o MAS traz o adb em C:\ProgramData\MacroAutomationStudio\3rdparty\platform-tools. No Mac, o adb fica dentro do pacote do app, com o seu PATH e o Homebrew como alternativas.

Confira a conexão você mesmo

Abra um terminal e rode os mesmos passos que o MAS roda. Use a porta das configurações do emulador.

bash
adb devices
adb connect 127.0.0.1:5555
adb -s 127.0.0.1:5555 shell wm size

Um emulador saudável responde à última linha com Physical size: 540x960 ou algo parecido. Quando a saída parecer errada, reinicie o servidor e tente de novo:

bash
adb kill-server
adb start-server
adb connect 127.0.0.1:5555

Onde encontrar o adb: os emuladores trazem as próprias cópias (o Nox o chama de nox_adb.exe na pasta bin; o MuMu Player mantém o adb_server.exe na pasta de instalação), o MAS traz um no Windows, e no Mac brew install android-platform-tools dá a você a build padrão.

Onde fica a opção de ADB

EmuladorLigar o ADBPorta da primeira instânciaMais instâncias
BlueStacks 5Configurações, aba Avançado, ative Android Debug Bridge5555, ou outra porta quando 5555 está ocupadaCada instância recebe a própria porta; o MAS aceita de 5555 a 8500
LDPlayerConfigurações, Outras configurações, defina Depuração ADB como Abrir conexão local, clique em Salvar configurações, reinicie a instância55555557, 5559 e assim por diante; o MAS aceita portas ímpares até 5599
MuMu PlayerA porta aparece em Configurações, Porta ADB, ou em Diagnóstico do dispositivo16384 (versões antigas: 7555)Cada instância soma 32: 16416, 16448 e assim por diante
MEmuLigado por padrão; a porta do host mapeia para a porta 5555 do Android2150321513, 21523 e assim por diante
NoxLigado por padrão; conecte com nox_adb.exe connect 127.0.0.1:62001 a partir da pasta bin62001Portas acima de 62001 até 63000

Páginas dos fabricantes: BlueStacks, LDPlayer, MuMu Player, MEmu, Nox.

BlueStacks ADB not working e outros erros de emulador

O ADB não funciona

Nada conecta: a lista Porta no MAS está vazia e adb connect informa “cannot connect” ou “connection refused”.

Causa: o ADB está desligado no emulador, ou a instância não terminou de iniciar. BlueStacks e LDPlayer vêm com o ADB desligado.

  • Ligue o ADB usando a tabela acima e reinicie a instância onde o fabricante pedir.
  • Aguarde até a tela inicial do Android aparecer, depois clique em Atualizar em Adicionar novo dispositivo.
  • Rode adb connect 127.0.0.1:<port> em um terminal. “connected to 127.0.0.1:” significa que o MAS também vai conectar.
  • Se uma ferramenta de segurança bloqueia conexões locais, libere o adb e o emulador nela.

ADB não reconhece o dispositivo

O card do dispositivo termina em Erro e o log diz “unable to connect to device”, ou um script lança DeviceNotConnectedError na primeira chamada.

Causa: a porta não pertence a nada, o emulador fechou, ou a conexão caiu depois que a execução começou.

  • Compare a porta no card do dispositivo com a das configurações do emulador. Corrija com Editar dispositivo.
  • Rode adb devices. Se a entrada estiver faltando, rode adb connect 127.0.0.1:<port> e leia a resposta.
  • Reinicie a instância do emulador e clique em Iniciar de novo. O MAS reconecta do zero a cada início.
  • Se você abriu o MAS antes do emulador, clique em Atualizar para a lista de portas ficar atual.

O dispositivo aparece como offline

adb devices lista 127.0.0.1:<port> offline e os comandos travam ou não retornam nada.

Causa: o servidor adb segura uma entrada antiga, dois adb de versões diferentes estão brigando pelo servidor, ou o emulador ainda está iniciando.

  • Rode adb kill-server e depois adb connect 127.0.0.1:<port> de novo.
  • Feche outras ferramentas que iniciam o próprio servidor adb (Android Studio, o console de outro emulador) enquanto o MAS roda.
  • Reinicie a instância do emulador. O conselho do próprio Nox para “null or offline” é o mesmo: reinicie o Nox e conecte de novo.
  • Aguarde o boot terminar; uma instância ainda carregando responde offline.

Porta ADB errada ou alterada

O dispositivo funcionou ontem e hoje falha com as mesmas configurações.

Causa: os emuladores distribuem portas quando uma instância inicia, e criar, clonar ou excluir instâncias desloca as portas. O BlueStacks muda para outra porta quando 5555 está ocupada.

  • Leia a porta atual nas configurações do emulador ou em adb devices depois que a instância iniciar.
  • No MAS, abra o card do dispositivo, clique em Editar dispositivo, defina a porta nova e salve.
  • Para uma configuração estável, mantenha as instâncias na mesma ordem no gerenciador de multi-instâncias do emulador e evite excluir a primeira.

Várias instâncias

Só a primeira instância conecta, ou o MAS informa “Port is already in use”.

Causa: cada instância precisa da própria porta e da própria entrada de dispositivo; uma porta pode ser adicionada uma vez.

  • Adicione um dispositivo por instância, cada um com a porta da instância. As faixas estão na tabela acima: LDPlayer e MuMu Player usam as portas ímpares 5555, 5557, 5559; o MuMu Player 12 soma 32 por instância; o MEmu soma 10; o Nox conta a partir de 62001.
  • Dê a cada dispositivo um nome igual ao da instância para os cards ficarem fáceis de distinguir.
  • Abra as instâncias uma de cada vez e clique em Atualizar para cada porta nova aparecer na lista.
  • Mesma macro, contas diferentes: use perfis de configurações para cada dispositivo seguir os próprios argumentos. Veja Grupos de dispositivos.

adb no Mac

O MAS mostra “ADB executable not found. Please install ADB using your package manager”.

Causa: o adb dentro do pacote do app não pôde ser executado e nada foi encontrado no seu PATH nem em /opt/homebrew.

  • Instale a build padrão com brew install android-platform-tools e reinicie o MAS.
  • Confira com which adb e adb version no Terminal. O MAS procura no pacote do app, depois no PATH e depois em /opt/homebrew/bin e /usr/local/bin.
  • No Mac, o emulador também precisa rodar no Mac; o MAS sempre disca 127.0.0.1.
  • Se a build do seu emulador para Mac não tem ADB nenhum, um dispositivo na nuvem roda sem adb local.

Quais portas ADB de emulador o MAS escaneia

O MAS monta a lista Porta a partir dos processos em execução, não de adb devices. Ele só mantém uma porta quando o nome do processo e a faixa de portas batem:

EmuladorNomes de processoPortas mantidas
BlueStacksHD-Player, BlueStacks5555 a 8500
LDPlayerLdVBoxHeadless, Ld9BoxHeadless, dnplayer, LDPlayer, VBoxNetNATPortas ímpares de 5555 a 5599
NoxNoxVMHandle62001 a 63000
MEmuMEmuHeadless, MEmuHyper21503 e toda porta terminada em 3 até 29993
MuMu PlayerNemuHeadless, MuMuPortas ímpares de 5555 a 5599, 7555, 16384 a 16576, 26624 a 27264

Só são consideradas portas ligadas a 127.0.0.1, 0.0.0.0 ou a todas as interfaces. Uma porta fora dessas regras nunca aparece na lista, mas Porta personalizada aceita qualquer valor de 1024 a 65535, então um emulador que o MAS não conhece ainda pode ser adicionado à mão.

Ainda travado

Junte os Logs do card do dispositivo (o botão Salvar grava em um arquivo), a saída de adb devices e o nome e a versão do emulador, depois pergunte no Discord ou escreva para support@automationmacro.com. Problemas gerais do app estão na página Solução de problemas.

Próximos passos

Páginas relacionadas

Esta página foi útil?

Dúvidas? Pergunte no Discord