Dalvik Debug Monitor Service (DDMS) es una herramienta que proporciona una interfaz gráfica de usuario (GUI) para varias herramientas de depuración y análisis de Android. DDMS está integrado en Android Studio y Eclipse, y también se puede utilizar de forma independiente.
DDMS tiene una serie de características, incluyendo la capacidad de:
- inspeccionar la Dalvik VM
- monitorear el uso de la memoria
- tomar capturas de pantalla y screencasts
- simular las llamadas telefónicas entrantes y los mensajes de texto
- simular los datos de ubicación
- inspeccionar las bases de datos SQLite
- perfilar las llamadas de métodos
DDMS es una poderosa herramienta que se puede utilizar para depurar y perfilar las aplicaciones Android. ¿Qué significa DDMS? DDMS es el Servidor de Monitorización de Depuración. Es una herramienta que se ejecuta en su ordenador y que le permite depurar las aplicaciones que se ejecutan en un dispositivo Android conectado. Proporciona una serie de características, incluyendo la capacidad de inspeccionar los hilos de ejecución, ver el seguimiento de la pila, y establecer puntos de interrupción.
¿Qué es DDMS?
DDMS son las siglas de Debugger Debug Monitor Service. Esta herramienta de depuración es utilizada por los desarrolladores para solucionar los problemas de las aplicaciones que se ejecutan en Dalvik (la máquina virtual Java de Android). DDMS proporciona una interfaz gráfica para el Android Debug Bridge, permitiendo a los desarrolladores ver y depurar los datos de los dispositivos Android.
¿Qué es depurar aplicaciones con DDMS?
Cuando estás desarrollando o probando aplicaciones Android, puedes utilizar el Android Debug Bridge (adb) para conectar el emulador Android o un dispositivo con Android a un ordenador de desarrollo para depurar.
El puente de depuración de Android (adb) es una versátil herramienta de línea de comandos que le permite comunicarse con una instancia del emulador o un dispositivo con Android conectado. Es un programa cliente-servidor que incluye tres componentes:
Un cliente, que envía comandos.
Un demonio (adbd), que ejecuta comandos en un dispositivo.
Un servidor, que gestiona la comunicación entre el cliente y el demonio.
El cliente adb se ejecuta en su ordenador de desarrollo. Puede utilizarlo para enviar comandos a adb o a dispositivos o emuladores específicos. El demonio adbd se ejecuta en el dispositivo o emulador y maneja los comandos de adb. El servidor adb gestiona la comunicación entre el cliente y el demonio.
Puede utilizar adb para hacer lo siguiente:
Ejecutar un shell en el dispositivo o emulador.
Copiar archivos hacia y desde el dispositivo o emulador.
Instalar y desinstalar apps en el dispositivo o emulador.
Ejecutar apps en el dispositivo o emulador.
Depurar aplicaciones en el dispositivo o emulador.
Para depurar tu aplicación, puedes conectar tu ordenador de desarrollo a un dispositivo o emulador con Android utilizando adb. Una vez que su ordenador de desarrollo está conectado a un dispositivo o emulador, puede utilizar DDMS para ver los mensajes de registro generados por su aplicación, establecer puntos de interrupción en su código, y examinar las variables mientras su aplicación se está ejecutando.
DDMS está integrado en Android Studio, por lo que puedes utilizarlo para depurar tu aplicación sin tener que configurar un entorno de desarrollo independiente. Para más información, consulta Depuración de tu aplicación.
¿Para qué se utiliza Dalvik?
Dalvik es una máquina virtual de procesos (VM) en el sistema operativo Android de Google. Es el software que ejecuta las aplicaciones en tu teléfono.
Dalvik fue escrito por Dan Bornstein, que le puso el nombre del pueblo de Dalvik en Islandia. Dalvik es un software de código abierto.
La Dalvik VM es una máquina virtual de sólo intérprete que ejecuta archivos en el formato Dalvik Executable (.dex), un formato que está optimizado para un almacenamiento eficiente y una ejecución en memoria. El formato .dex está diseñado para que una aplicación completa pueda convertirse en un archivo .dex y ejecutarse desde el almacenamiento en un dispositivo con muy poca memoria RAM. Dalvik está basado en registros y utiliza un compilador "justo a tiempo" (JIT) basado en trazas para compilar código de bytes a código máquina nativo sobre la marcha.
Dalvik ha sido sustituido por Android Runtime (ART) en las nuevas versiones de Android, pero Dalvik se sigue utilizando para las versiones más antiguas de Android y para las aplicaciones que son compatibles con Dalvik.