¿Cómo depurar mi aplicación en Linux con mi móvil Android?

¿Cómo puedo depurar mi aplicación de Android en un móvil, no en el emulador?

Mi sistema operativo es Linux. Cuando intento conectar con mi dispositivo móvil para la depuración, no está respondiendo.

Esta pregunta se contesta en la documentación para la depuración contra un dispositivo móvil: Uso de dispositivos de hardware .

Directamente citado de su documentación:


  1. Declare su aplicación como "debuggable" en su Manifiesto de Android.
    En Eclipse, puede hacer esto desde la ficha Aplicación al ver el manifiesto (en el lado derecho, establezca Debuggable en true ). De lo contrario, en el archivo AndroidManifest.xml , agregue android:debuggable="true" al elemento <application> .

  2. Configure su dispositivo para permitir la instalación de aplicaciones que no sean de Market.
    En el dispositivo, vaya a Configuración> Aplicaciones y active Fuentes desconocidas (en un dispositivo Android 4.0, la configuración se encuentra en Configuración> Seguridad ).

  3. Active "Depuración USB" en su dispositivo.
    En el dispositivo, vaya a Configuración> Aplicaciones> Desarrollo y habilite la depuración USB (en un dispositivo Android 4.0, la configuración se encuentra en Configuración> Opciones de desarrollador ).

  4. Configure su sistema para detectar su dispositivo.

    • <Snip – No utiliza Windows ni Mac OS X>
    • Si se está desarrollando en Ubuntu Linux, debe agregar un archivo de reglas udev que contenga una configuración USB para cada tipo de dispositivo que desee utilizar para el desarrollo. En el archivo de reglas, cada fabricante de dispositivos se identifica mediante un ID de proveedor único, tal como se especifica en la propiedad ATTR{idVendor} . Para obtener una lista de los ID de proveedores, consulte ID de proveedores USB , a continuación. Para configurar la detección de dispositivos en Ubuntu Linux:
      1. Inicie sesión como root y cree este archivo: /etc/udev/rules.d/51-android.rules .
        Utilice este formato para agregar cada proveedor al archivo:
        SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"

        En este ejemplo, el ID del proveedor es para HTC. La asignación MODE especifica permisos de lectura / escritura y GROUP define qué grupo Unix posee el nodo de dispositivo.
        Nota : La sintaxis de la regla puede variar ligeramente dependiendo de su entorno. Consulte la documentación de udev para su sistema según sea necesario. Para obtener una descripción general de la sintaxis de las reglas, consulte esta guía para escribir las reglas de udev .

      2. Ahora ejecute:
        chmod a+r /etc/udev/rules.d/51-android.rules

Puede comprobar que su dispositivo está conectado ejecutando adb devices desde su platform-tools/ SDK platform-tools/ directory. Si está conectado, verá el nombre del dispositivo como un "dispositivo".

Si utiliza Eclipse , ejecute o depure su aplicación como de costumbre. Se le presentará un diálogo de Selección de dispositivo que enumera los emuladores disponibles y el (los) dispositivo (s) conectado (s). Seleccione el dispositivo en el que desea instalar y ejecutar la aplicación.

Si usa el puente de depuración de Android (ADB), puede emitir comandos con el indicador -d para orientar el dispositivo conectado.

Configuración de un dispositivo para el desarrollo

Configure su dispositivo para permitir la instalación de aplicaciones que no sean de Market.

  1. En el dispositivo, vaya a Configuración > Aplicaciones y active Fuentes desconocidas (en un dispositivo Android 4.0, la configuración se encuentra en Configuración > Seguridad ).

  2. Active "Depuración USB".

  3. En el dispositivo, vaya a Configuración > Aplicaciones > Desarrollo y habilite la depuración USB (en un dispositivo Android 4.0, la configuración se encuentra en Configuración > Opciones de desarrollador ).

  4. Configure su sistema para detectar su dispositivo.

Si se está desarrollando en Ubuntu Linux, debe agregar un archivo de reglas udev que contenga una configuración USB para cada tipo de dispositivo que desee utilizar para el desarrollo. En el archivo de reglas, cada fabricante de dispositivos se identifica mediante un ID de proveedor único, tal como se especifica en la propiedad ATTR{idVendor} . Para obtener una lista de los ID de proveedores, consulte ID de proveedores USB, a continuación. Para configurar la detección de dispositivos en Ubuntu Linux:

  1. Inicie sesión como root y cree el archivo /etc/udev/rules.d/51-android.rules .

  2. Utilice este formato para agregar cada proveedor al archivo:

     SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev" 

En este ejemplo, el ID del proveedor es para HTC. La asignación MODE especifica permisos de lectura / escritura y GROUP define qué grupo Unix posee el nodo de dispositivo. Nota: La sintaxis de la regla puede variar ligeramente dependiendo de su entorno. Consulte la documentación de udev para su sistema según sea necesario. Para obtener una descripción general de la sintaxis de las reglas, consulte esta guía para escribir las reglas de udev.

Ahora ejecute:

 chmod a+r /etc/udev/rules.d/51-android.rules 

En Android 4.2 y versiones más recientes, las opciones de desarrollador se ocultan de forma predeterminada. Para que esté disponible, vaya a Ajustes > Acerca del teléfono y pulse en Construir número siete veces . Vuelva a la pantalla anterior para encontrar las opciones de desarrollador.

  • Android-maven-plugin: Deshabilitar la compilación de depuración para apk
  • Depuración de Kernel de Android
  • Apk sólo se ejecuta en modo de depuración. Apk comenzó con "Ejecutar" en Eclipse se detiene en puntos de interrupción
  • ¿Se puede depurar el javascript en el navegador nativo de una tableta Samsung?
  • El depurador de Android Studio no muestra variables locales
  • Android Studio: Cómo depurar la versión anterior de Android SDK paso a paso
  • Depuración del código Android NDK C / C ++ en Eclipse: los puntos de interrupción no se alcanzan
  • ¿Es posible ver variables en tiempo de ejecución?
  • Cuando se depura en el dispositivo con ART activado, la aplicación android es lenta
  • Android adb wireless / WIFI debug Operación agotada
  • El depurador de Eclipse "salta" saltando código importante
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.