Android Dev Summit, October 23-24: two days of technical content, directly from the Android team. Sign-up for livestream updates.

Cómo depurar una app de Wear OS

Si quieres depurar tu app para Wear OS, puedes conectar tu máquina de desarrollo a un reloj mediante Wi-Fi o Bluetooth como se describe en esta página. Si tu reloj tiene un puerto USB, puedes conectarlo por USB.

Consulta los siguientes recursos relacionados:

Cómo habilitar las opciones para desarrolladores en tu reloj

Antes de realizar la depuración en tu reloj, debes habilitar las opciones para desarrolladores. Solo necesitas hacerlo una vez, ya que estas permanecerán habilitadas hasta que las inhabilites.

  1. Abre la Configuración del reloj.
  2. Presiona Sistema > Información.
  3. Desplázate hasta Número de compilación y presiónalo siete veces.
  4. Aparecerá un cuadro de diálogo en el que se confirmará que ahora eres desarrollador.

Cómo depurar por Wi-Fi

Antes de comenzar, asegúrate de haber habilitado las opciones para desarrolladores en el reloj.

Cómo conectar el reloj a una red Wi-Fi

  1. Abre la Configuración del reloj.
  2. Presiona Conectividad > Wi-Fi.
  3. Elige una red y, si corresponde, ingresa la contraseña.

    Nota: El reloj y la máquina de desarrollo deben estar conectados a la misma red. Ten en cuenta que no todos los puntos de acceso pueden usarse. Es posible que tengas que usar un punto de acceso cuyo firewall esté configurado correctamente para admitir ADB.

Cómo habilitar la depuración por Wi-Fi

  1. Abre la Configuración del reloj.
  2. Presiona Opciones para desarrolladores > Depurar mediante Wi-Fi.
  3. Luego de un momento, se mostrará la dirección IP del reloj (por ejemplo, 192.168.1.100) en la pantalla. Anótala porque la necesitarás para el siguiente paso.

Cómo conectar el depurador al reloj

  1. Asegúrate de que el reloj y tu máquina de desarrollo estén conectados a la misma red.
  2. Conecta el depurador al reloj mediante la dirección IP del reloj. Por ejemplo, si la dirección IP es 192.168.1.100, el comando ADB de conexión y su respuesta se verán de la siguiente manera (se agrega a la dirección un número de puerto, 5555):

        adb connect 192.168.1.100
        connected to 192.168.1.100:5555
        

El reloj ya estará conectado al depurador y podrás iniciar la depuración. Envía comandos ADB al reloj mediante el indicador "-s" y especifica la dirección IP del reloj, incluido el número de puerto:

    adb -s 192.168.1.100:5555 <command>
    

Si no usas el emulador y solo tienes un dispositivo conectado para la depuración, no necesitas especificar la dirección:

    adb <command>
    

Cómo depurar por Bluetooth

La depuración por Bluetooth solo funciona en relojes sincronizados con dispositivos Android. Antes de comenzar, asegúrate de que el reloj y el teléfono estén sincronizados, y de haber habilitado las opciones para desarrolladores en el reloj. Además, verifica que estas opciones también estén habilitadas en el teléfono. Para ello, abre el menú Configuración del teléfono, selecciona Acerca del dispositivo y haz clic en el número de compilación siete veces.

Cómo habilitar la depuración por USB en el teléfono

  1. Abre el menú de Configuración del teléfono.
  2. Selecciona Opciones para desarrolladores y habilita la Depuración por USB.

Cómo habilitar la depuración por ADB/Bluetooth en el reloj

  1. Abre el menú de Configuración del reloj.
  2. Desplázate hasta Opciones para desarrolladores.
  3. Confirma que la Depuración por ADB esté habilitada.
  4. Habilita la Depuración por Bluetooth.

Cómo habilitar la depuración por Bluetooth en el teléfono

  1. En el teléfono, abre la app de Wear complementaria.
  2. Desplázate hasta Configuración avanzada y presiona para ver las opciones de Configuración avanzada.
  3. Habilita la Depuración por Bluetooth. Aparecerá un mensaje de estado debajo de la opción. El aspecto resultante será el siguiente:
        Host: disconnected
        Target: connected
        

En este punto, la máquina de desarrollo (el host) no tiene comunicación con el reloj (el destino). Por lo tanto, debes completar el vínculo.

Nota: Solo puedes realizar la depuración con un dispositivo a la vez. Si tienes varios relojes sincronizados, la depuración por Bluetooth solo se habilitará con el dispositivo seleccionado en la pantalla principal.

Cómo conectar el depurador al reloj

En este paso final, usarás todos los elementos: el depurador, el teléfono y el reloj.

  1. Conecta el teléfono a tu máquina de desarrollo mediante un cable USB.
  2. Ejecuta estos dos comandos en el depurador:
        adb forward tcp:4444 localabstract:/adb-hub
        adb connect 127.0.0.1:4444
        

    Nota: Debes usar la dirección IP 127.0.0.1. Puedes usar cualquier puerto disponible en tu máquina de desarrollo, pero asegúrate de que sea el mismo para ambos comandos (en este ejemplo, el puerto es 4444).

  3. Una vez que escribas el comando de conexión, mira el reloj. Se te solicitará que confirmes la Depuración por ADB.
  4. Vuelve al teléfono y verifica la pantalla de estado en la aplicación de Wear complementaria. Debe tener el siguiente aspecto:
        Host: connected
        Target: connected
        
  5. El reloj ya estará conectado al depurador y podrás iniciar la depuración.

Cuando depuras un reloj mediante Bluetooth, ADB siempre usa la dirección IP 127.0.0.1 y el puerto que asignaste. Por lo tanto, todos los comandos ADB usan este formato (siguiendo el ejemplo, el puerto es 4444):

adb -s 127.0.0.1:4444 <command> 

Si no usas el emulador y solo tienes un dispositivo conectado para la depuración, no necesitas especificar la dirección:

    adb <command>
    

Cómo usar la grabación de pantalla para Wear

Si desarrollas tu app en macOS®, puedes usar un proyecto de GitHub (herramienta de Android para Mac) para grabar un video desde tu dispositivo Wear.

De manera alternativa, sigue estos pasos para grabar un video con tu dispositivo Wear:

  1. Graba marcos RAW en el reloj:
    adb shell screenrecord --time-limit 30 --output-format raw-frames --verbose /sdcard/video.raw
  2. Copia el archivo RAW en tu máquina de desarrollo:
    adb pull /sdcard/video.raw video.raw
  3. Usa ffmpeg para convertir el archivo RAW a MP4:
    ffmpeg -f rawvideo -vcodec rawvideo -s 400x400 -pix_fmt rgb24 -r 10 -i video.raw -an -c:v libx264 -pix_fmt yuv420p video.mp4

    Nota: Consulta el sitio web de FFmpeg para obtener instrucciones de instalación y descarga.