Adb puede listar dispositivos pero adb shell / logcat no funciona

Version corta

adb devices pueden enumerar el dispositivo, pero adb shell o adb logcat simplemente colgar y no funcionan.

Versión larga

Aquí hay varias salidas de comandos.

 /* system info */ $ uname -a Linux ubuntu-vm 3.8.0-19-generic #29-Ubuntu SMP Wed Apr 17 18:16:28 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux /* udev info */ $ cat /etc/udev/rules.d/51-android.rules SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev" $ lsusb Bus 001 Device 003: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-P7500 [Galaxy Tab 10.1] Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub $ adb devices -l List of devices attached 0A3C294805017006 device usb:1-1 product:full_toroplus model:Full_AOSP_on_Toroplus device:toroplus $ adb shell /* no output, just hang */ $ adb logcat /* no output either */ /* verbose mode */ $ ADB_TARCE=1 adb shell system/core/adb/adb.c::main():Handling commandline() system/core/adb/commandline.c::adb_commandline():starting interactive shell system/core/adb/adb_client.c::_adb_connect():_adb_connect: host:version .......... 4f4b4159 OKAY system/core/adb/adb_client.c::switch_socket_transport():Switch transport success system/core/adb/transport.c::writex():writex: fd=3 len=4: 30303036 0006 system/core/adb/transport.c::writex():writex: fd=3 len=6: 7368656c6c3a shell: system/core/adb/transport.c::readx():readx: fd=3 wanted=4 /* hang at this point */ 

Parece que el servidor adb espera algunos datos del teléfono, pero no puede conseguirlo, por lo que está atascado allí.

He intentado:

  • Eliminar y reiniciar el servidor adb
  • Desconecte y luego enchufe el teléfono
  • reinicia el teléfono
  • Deshabilitar depuración usb en el teléfono y luego habilitarlo

A veces, después de desenchufar / enchufar el teléfono, trabajará por un rato (puedo hacer la adb shell ), pero pronto para de trabajar. Y la mayoría de las veces, desenchufar / enchufe teléfono incluso no tiene ningún efecto en absoluto!

Estoy ejecutando ubuntu como invitado vmplayer. El host es Windows 7.

Gracias de antemano por cualquier ayuda o sugerencias.

ACTUALIZAR

¡Después de enchufar el teléfono en el puerto trasero del usb, de repente funciona! Pero no estoy seguro de que el problema esté realmente resuelto. Veremos.

Tuve exactamente el mismo problema con el shell de adb que cuelga. Estoy ejecutando un huésped Ubuntu 12.04 VM en un host Ubuntu. El problema para mí era el ajuste de la compatibilidad del USB para la VM fue fijado a 1.1, él necesita ser por lo menos 2.0. Para cambiar la configuración, apague la máquina virtual y elija "Editar configuración de la máquina virtual" en el menú de inicio de VMPlayer. A continuación, seleccione el dispositivo "USB Controller" y cambie "USB Compatibility" a USB 2.0.

Tuve el mismo problema, obteniendo diferentes resultados (ninguno funcionaba bien) probando diferentes puertos usb en el equipo. Finalmente decidí ir a la tienda y comprar un nuevo cable USB. Ahora funciona perfectamente! Supongo que los cables USB pueden ser usados ​​o malos …

Cuento: ¡Compre un nuevo cable! Trabajó para mí!

Yo tuve el mismo problema. Acabo de quitar el cable USB del ratón conectado al segundo puerto USB y conectado el cable del teléfono a ese (segundo puerto USB). ¡Funcionó!

He notado si enchufar el usb en mi MAC primero, entonces lo enchufa en el androide, adb trabaja. Tal vez por eso la gente se da cuenta de diferentes cables de trabajo? (Sucede que se conectan / desconectan los cables en un orden diferente)

  • Android studio 1.0.2 no crea aplicación: mergeDebugResources error
  • configure: error: Necesita luac de 32 bits al usar lua de contrib
  • Emulador ya está en ejecución pero no puede verlo en ubuntu
  • Ningún archivo o directorio 'mientras intenta obtener la versión de adb
  • Android Studio - No se pudo determinar la versión de Java
  • ¿Cómo abrir el administrador de AVD en Ubuntu Linux desde la línea de comandos?
  • Vista de la documentación de Android studio open
  • No se puede ejecutar adb desde el terminal en Ubuntu
  • Ant no puede encontrar javac, JAVA_HOME no se establecerá en Ubuntu
  • Ubuntu - Error: No se pudo crear la tarjeta SD
  • ¿Es posible conectar un dispositivo Android a través de un terminal a través de USB?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.