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.

  • Como estabelecer connection adb por USB entre dois PCs
  • Dispositivo sem fio ADB não autorizado
  • Transferindo dados binarys sobre o shell ADB (ou seja, transferência rápida de files usando tair)
  • Defina o text da prancheta através do shell do adb a pairtir do nível da API 11
  • ADB push -p Descriçador de file incorreto
  • O que é o AdB no Android?
  • 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!

  • Por que o adb retorna offline após a string do dispositivo?
  • Erro de adb: mais de um dispositivo - Android
  • Como viewificair o database no dispositivo Android não rooteado
  • Usando adb logcat com um telefone real (e não o emulador)
  • Android: cópia recursiva com adb push
  • ADB sobre wireless
  • 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.