App de ejemplo de Google Home para Matter

App de ejemplo de Google Home para Matter

El Google Home Sample App for Matter usa el Google Home Mobile SDK para crear una app para Android similar a Google Home app (GHA). Esta app de ejemplo proporciona las siguientes funciones:

  • Asigna dispositivos Matter físicos y virtuales al entorno local de Android
  • Asigna credenciales a dispositivos físicos y virtuales en un entorno de desarrollo
  • Controlar dispositivos en tu tejido de desarrollo, por ejemplo, encender una luz
  • Las funciones de varios administradores te permiten compartir dispositivos en la estructura de desarrollo con otras apps y, a la inversa, poder incluir en la estructura de desarrollo dispositivos compartidos desde otras apps.
  • Utilidades para desarrolladores

En esta guía, se describe cómo instalar el APK de Sample App for Matter y usarlo para encargar, controlar y compartir dispositivos Matter.

Para descargar el código fuente, aprender a integrar el Mobile SDK y personalizar pantallas en Android Studio, prueba nuestro codelab de Sample App for Matter.

Ir al codelab de Sample App for Matter

Requisitos previos

No necesitas una unidad central, por ejemplo, un Google Nest Hub (2nd gen), para poner en marcha y controlar dispositivos con la Sample App for Matter.

Instalar

  1. Ve a la sección Versiones en el repositorio de GitHub de Sample App for Matter. Para obtener la versión más reciente, busca en la sección Recursos el APK llamado GHSAFM-version-default-debug.apk. No selecciones la opción targetcommissioner.

  2. Instala Android Debug Bridge (adb):

    Instala adb

  3. Conecta tu dispositivo Android con USB, habilita Transferencia de archivos y, luego, instala el APK:

    $ adb unroot && adb install GHSAFM-version-default-debug.apk
    

Cómo poner en marcha dispositivos

Cuando inicies la app de ejemplo por primera vez, verás un diálogo con un vínculo al codelab de Sample App for Matter. Si seleccionas No volver a mostrar este mensaje, puedes volver a abrir el diálogo en cualquier momento actualizando tus preferencias en la sección Administrador de la app.

En los próximos pasos, agregarás un dispositivo Matter a la red de Android local, junto con una red de desarrollo que solo es local para la app de ejemplo.

¿Qué son las estructuras de Matter?

App de ejemplo de Google Home para Matter

Una estructura de Matter es un dominio de confianza compartido entre los dispositivos de una red doméstica que les permite comunicarse entre sí.

Los dispositivos pueden tener uno o más fabrics que correspondan a una plataforma, una app o un grupo de dispositivos que interactúan entre sí. Los fabrics tienen un ID único, y los dispositivos comparten el mismo conjunto de credenciales y la misma autoridad certificadora (AC). Estas credenciales se asignan durante la puesta en marcha de Matter.

Para comisionar un dispositivo Matter, completa los siguientes pasos:

  1. Presiona el botón Agregar dispositivo para iniciar el proceso de comisión.

    Agregar dispositivo

  2. Luego, el control se transfiere a Google Play services, que se inicia desde una llamada a Mobile SDK. Para establecer la prueba de posesión, escanea el código QR o presiona Usar código de vinculación.

    Escanear código QR

  3. Cuando se complete la vinculación, ingresa un nombre para el dispositivo y, luego, presiona Listo.

Tu dispositivo ahora está conectado tanto a la estructura local de Android como a la estructura de desarrollo.

Play services se encarga de todo el trabajo de comisión y las pantallas asociadas cuando se comisionan dispositivos. Esto proporciona una experiencia del usuario coherente y elimina la necesidad de controlar permisos sensibles, por ejemplo, las credenciales de Wi-Fi y Thread.

Controla dispositivos

La estructura de desarrollo crea las credenciales para controlar los dispositivos Matter directamente desde la app de ejemplo.

En la pantalla principal, puedes activar o desactivar el dispositivo. Presiona el dispositivo para acceder a sus detalles.

Se agregó el dispositivo

Compartir dispositivos

El uso compartido de un dispositivo se denomina flujo de varios administradores en la especificación de Matter. Una vez que se comisiona un dispositivo en la app de ejemplo, puedes compartirlo fácilmente con otros ecosistemas.

Para compartir tu dispositivo Matter con otros ecosistemas, deberás tener otra plataforma instalada en tu dispositivo Android. Esta plataforma externa se convierte en el comisionador de destino. Creamos otra instancia de la app de ejemplo que puedes usar como comisionado de destino.

  1. Ve a la sección Versiones en el repositorio de GitHub de Sample App for Matter. Para obtener la versión más reciente, busca en la sección Recursos el APK llamado GHSAFM-version-targetcommissioner-debug.apk. No selecciones la opción default.

  2. Instala el comisionador de destino.

    $ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
    
  3. En la pantalla principal, presiona el dispositivo para mostrar su información. Presiona Compartir.

    Compartir dispositivo

La app de ejemplo llama a la API de Share de Mobile SDK y, una vez más, el control se transfiere a Play services.

Se mostrará una hoja de uso compartido que te permitirá elegir la app o la plataforma con la que quieras vincular el dispositivo. En esta pantalla, se proporcionan dos formas de compartir el dispositivo:

  1. De forma manual, a través de un código de configuración que se compartirá con la app de comisionado de destino
  2. Con una app para Android local que se haya registrado como comisionador de Matter

La app de comisionado de destino tiene la etiqueta GHSAFM-TC. Presiona esta instancia de la app de ejemplo para compartir tu dispositivo.

Luego, la app externa (comisionador de destino) completa la comisión del dispositivo en su propio tejido.

Configuración

En la pantalla principal, haz clic en el ícono de configuración . Aquí tienes las opciones para actualizar las preferencias del usuario, obtener ayuda y obtener más información sobre la app.

Configuración

Notificación de media hoja

En la pantalla Configuración, puedes inhabilitar las notificaciones proactivas de descubrimiento de dispositivos comisionables para los dispositivos Matter.

Si tu aplicación proporciona su propio flujo de descubrimiento o comisión de Matter, es posible que quieras suprimir estas notificaciones para evitar interrupciones. Consulta Cómo suprimir las notificaciones de descubrimiento de dispositivos que se pueden comisionar para obtener más información.

Utilidades para desarrolladores

En la pantalla Configuración, también puedes acceder a las utilidades para desarrolladores.

Para revisar el contenido de los repositorios de DataStore de preferencias del usuario y del dispositivo en Logcat, completa los siguientes pasos:

  1. Haz clic en Registrar el contenido de los repositorios.

  2. Haz clic en OK en el cuadro de diálogo y, luego, marca Logcat.

Comentarios y ayuda

Para enviar tus ideas o comentarios sobre cómo podemos mejorar la experiencia de desarrollo con Sample App for Matter, completa nuestro formulario de comentarios.

Envíanos tus comentarios

Si tienes problemas con el Sample App for Matter, intenta completar los pasos para verificar tu entorno:

Si tienes preguntas sobre cómo usar la app de ejemplo o descubres un error en el código, puedes enviar problemas a la herramienta de seguimiento de errores en el repositorio de GitHub:

Para obtener orientación oficial de Google sobre preguntas técnicas, usa el foro para desarrolladores de casa inteligente:

Para obtener asistencia técnica de la comunidad, usa la etiqueta google-smart-home en Stack Overflow: