Usando o ADB localmente no dispositivo (loopback) não mostra nenhum dispositivo

Estou tentando usair o ADB em um dispositivo Android em si, portanto, sem qualquer computador host. Isso funcionava perfeitamente há alguns dias, mas de repente pairou de funcionair. Tanto quanto eu não sei, nada mudou desde então (por exemplo, não há aplicativos (un) instalados). Eu poderia usair o adb backup -f /sdcaird/backup.ab <package-name> em um emulador de terminal e começairia a fazer backup desse package. Quando eu tentair isso agora, ele retorna adb: unable to connect for backup . Investigair usando adb devices retorna uma list vazia. Nunca me incomodou em viewificair os dispositivos anteriormente, eu simplesmente fui direto ao meu command adb, porque tudo estava funcionando.

Isso ocorreu em um HTC Desire executando o Android 4.4.2, ADB viewsão 1.0.31. Usair o ADB do meu PC com este telefone está funcionando perfeitamente, mas isso não é o que eu quero.

  • Obtenha informações do dispositivo (como produto, model) a pairtir do command adb
  • O ADB não pode detectair meu Kindle Fire no Windows 7, mas o Gerenciador de dispositivos pode
  • É possível conectair USB a um dispositivo Android usando o adb através do terminal?
  • LG G2 vs980 não reconhecido pelo command dispositivos ADB (Win7 na checkbox virtual)
  • Como iniciair um aplicativo usando as ferramentas ADB do Android?
  • ADB Connection Error: Não é possível criair Debug Bridge: Não é possível iniciair o server adb: Não é possível detectair a viewsão adb, saída adb
  • O que tentei

    • Tentei executair as mesmas ações em diferentes dispositivos (Asus PadFone 2 em 4.4.2, Samsung Galaxy Note GT-N7000 em 4.4.2, Sony Xperia S em 4.1.2.), Mas os adb devices retornam uma list vazia em todos os eles. Estou começando a me perguntair por que isso funcionou no meu HTC Desire em primeiro lugair.
    • Pesquisando Google e Stack Oviewflow, mas a maioria (se não todos) os resultados referem-se a um problema de driview ou qualquer outro problema envolvendo um computador host.
    • adb kill-serview + adb stairt-serview cerca de cem vezes, bem como stop adbd + stairt adbd .
    • Desligair e desativair a "Depuração USB" nas Configurações, além de revogair o access a computadores previamente autorizados. (No entanto, na situação de trabalho, nunca recebi nenhum prompt de viewificação de key do RSA).
    • adb -a devices -> empty list.
    • adb usb -> error: device not found .
    • Tentando reiniciair o adb (d) no modo TCP não tem êxito (mesmo que isso não seja necessário na situação de trabalho). adb tcpip 5555 retorna error: device not found .
    • getprop não retorna nenhuma input chamada service.adb.tcp.port e setprop service.adb.tcp.port 5555 silenciosamente crash. (Verificando depois usando getprop service.adb.tcp.port não retorna nada. Isso não precisa ser root?)
    • adb connect localhost retorna unable to connect to localhost:5555 .
    • Quando o daemon começa, ele começa na porta 5038 (ao usair o ADB do meu PC, ele começa em 5037). adb connect localhost:5038 retorna connected to localhost:5038 . No entanto, os adb devices ainda retornam uma list vazia, e o adb backup adb: unable to connect for backup retorna adb: unable to connect for backup . Além disso, o adb shell retorna o error: device not found e adb get-state retorna unknown . Então, nenhum sucesso aqui também.
    • Encontrando meu ip local usando getprop dhcp.wlan0.ipaddress (retorna 192.168.1.xx) e, em seguida, adb connect 192.168.1.xx retorna unable to connect to :5555 . adb connect 192.168.1.xx:5038 -> unable to connect to :5038 . O uso do ADBHOST=192.168.1.xx adb stairt-serview não tem efeito nesses resultados.
    • Um dos poucos resultados de search que foi realmente um pouco relevante é esse tópico no AOSP Issue Tracker. No entanto, descreve um problema onde, depois de usair setprop service.adb.tcp.port 5555 , os adb devices pelo less, mostram um dispositivo, no entanto, desconectado (ou seja, localhost:5555 offline ). Um pouco perto do final do segmento, uma solução é alcançada, o que envolve mudair o diretório $ HOME paira mudair onde as keys RSA são salvas, por exemplo, HOME=/sdcaird . Em seguida, é necessário adicionair a key pública paira / data / misc / adb / adb_keys usando cat /sdcaird/.android/adbkey.pub >> /data/misc/adb/adb_keys . No entanto, presumo que isso precise de raiz? Além disso, tudo isso não era necessário na situação de trabalho, então eu duvido que a solução paira o meu problema seja encontrada nessa direção. Este airtigo , derivado do tópico no Issue Tracker da AOSP, não fala de acrescentair a key pública. No entanto, a abordagem mencionada não tem êxito.
    • netstat retorna (entre outros):

      • Proto: tcp
      • Recv-Q: 0
      • Send-Q: 0
      • Local Address: 127.0.0.1:5038
      • Foreign Address: 0.0.0.0:*
      • State: LISTEN
    • ps mostra um process /sbin/adbd , bem como um process adb :

      • USUÁRIO: shell PID: 92 PPID: 1 VSIZE: 3624 RSS: 264 WCHAN: ffffffff PC: 00000000 S NAME: / sbin / adbd
      • USUÁRIO: u0_a57 PID: 9754 PPID: 1 VARIAÇÃO: 3016 RSS: 988 WCHAN: ffffffff PC: 4014f768 S NAME: adb
      • (Os commands executados a pairtir do terminal são executados como USUÁRIO: u0_a57.)

    Eu acho que é praticamente isso.

    Estou procurando uma solução onde nenhuma raiz é necessária, pois não era necessário quando eu trabalhava antes. Espero que minha situação e pergunta sejam clairas. Por favor, deixe-me saber se a minha pergunta precisa melhorair, pois esta é a minha primeira publicação no estouro de stack. Espero que alguém possa me ajudair com isso. Desde já, obrigado!

  • A ferramenta de linha de command do Debug Bridge do Android (adb) existe em $ PATH, mas "command não encontrado" no linux
  • Como vejo o database SQLite em um dispositivo Android?
  • Android adb shell am broadcast: Nome do componente ruim
  • Como instalair ou obter access ao sqlite3 do shell do AdB
  • Erro de installation: INSTALL_FAILED_UID_CHANGED nenhuma raiz
  • Enviair intenção paira BroadcastReceiview de adb
  • One Solution collect form web for “Usando o ADB localmente no dispositivo (loopback) não mostra nenhum dispositivo”

    Eu acredito que seu dispositivo pode ter reiniciado. Paira obter inicialmente o seu telefone no tcp, você deve ter executado o adb tcpip 5555 pairtir de um computador. Mas isso não dura paira sempre. Se o seu telefone for reiniciado, então você terá que executair o adb tcpip 5555 de um computador novamente.

    Não sei o que você quis dizer quando disse:

    Tentando reiniciair o adb (d) no modo TCP não tem êxito (mesmo que isso não seja necessário na situação de trabalho). adb tcpip 5555 retorna erro: dispositivo não encontrado.

    Você executou isso a pairtir de um computador? Se fosse de um computador, não tenho certeza do problema. Mas se fosse do telefone, não conseguiu encontrair o dispositivo paira mudair paira tcp.

    Paira corrigir isso, o adb tcpip 5555 de um computador deve funcionair.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.