Google Home Sample App for Matter usa 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 a la estructura local de Android
- Cómo asignar dispositivos físicos y virtuales a un entorno de desarrollo
- Controlar dispositivos en la estructura de desarrollo (por ejemplo, encender una luz)
- Las funciones de varios administradores te permiten compartir dispositivos en el entramado de desarrollo con otras apps y, a la inversa, poder incluir en el entramado 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 comisionar, controlar y compartir dispositivos Matter.
Para descargar el código fuente, aprender a integrar Mobile SDK y personalizar pantallas en Android Studio, prueba nuestro codelab Sample App for Matter.
Ve al codelab de Sample App for Matter.
Requisitos previos
- Un dispositivo con Android O (8.1, nivel de API 27) o versiones posteriores disponible para pruebas. Para asegurarte de que tu dispositivo tenga la compatibilidad más reciente con Matter, consulta la guía Cómo verificar los módulos y servicios de Matter.
- Compila un dispositivo Matter con capacidades de encendido y apagado. Esta app de ejemplo funciona con un dispositivo virtual y un ESP32.
- Dispositivo Virtual de Matter (MVD). Para minimizar los problemas del entorno, te recomendamos que uses MVD al principio. Si alguna vez tienes problemas, será mucho más fácil investigar si la app de ejemplo se usa en MVD.
- Compila un dispositivo virtual Matter con la app de
rootnode_dimmablelight_bCwGYSDpoe
. Cuando crees una integración de Matter en Google Home Developer Console, usa0xFFF1
como ID de proveedor y0x8000
como ID de producto. - Compila un dispositivo Espressif con
all-clusters-app
. Cuando crees una integración de Matter en Developer Console, usa0xFFF1
como tu ID de proveedor y0x8001
como tu ID de producto.
No necesitas un concentrador, por ejemplo, un Google Nest Hub (2nd gen), para asignar y controlar dispositivos con Sample App for Matter.
Instalar
Ve a la sección Releases en el repositorio de GitHub de Sample App for Matter. Para la versión más reciente, busca en la sección Recursos el APK llamado
GHSAFM-version-default-debug.apk
. No seleccionestargetcommissioner
.Instala Android Debug Bridge (adb):
Conecta tu dispositivo Android con USB, habilita la Transferencia de archivos y, luego, instala el APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Cómo comisionar 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 mostrar 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 estructura local de Android, junto con una estructura de desarrollo que sea local solo para la app de ejemplo.
¿Qué son las telas Matter?
Una estructura 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 tejidos que corresponden a una plataforma, una app o un grupo de dispositivos que interactúan entre sí. Los tejidos 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 comisión de Matter.
Para asignar un dispositivo Matter, completa los siguientes pasos:
Presiona el botón
Add Device para iniciar el proceso de comisión.A continuación, el control se transfiere a Google Play services, que se inicia desde una llamada a Mobile SDK. Para establecer una prueba de posesión, Escanea el código QR o presiona Usar código de vinculación.
Cuando se complete la puesta en marcha, ingresa un Nombre del dispositivo y presiona Listo.
Ahora, tu dispositivo está conectado a la estructura local de Android y a la estructura de desarrollo.
Play services controla todo el trabajo de comisión y las pantallas asociadas cuando se comisionan los dispositivos. Esto proporciona una experiencia del usuario coherente y elimina la necesidad de controlar permisos sensibles, por ejemplo, credenciales de Wi-Fi y Thread.
Controla dispositivos
El fabric 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 On o Off. Presiona el dispositivo para acceder a sus detalles.
Compartir dispositivos
En la especificación de Matter, compartir un dispositivo se conoce como flujo de varios administradores. Una vez que se comisiona un dispositivo a la app de ejemplo, puedes compartirlo fácilmente con otros ecosistemas.
Para compartir tu dispositivo Matter con otros ecosistemas, necesitarás tener otra plataforma instalada en tu dispositivo Android. Esta plataforma externa se convierte en el comitente de segmentación. Creamos otra instancia de la app de ejemplo que puedes usar como el comisionado de destino.
Ve a la sección Releases en el repositorio de GitHub de Sample App for Matter. Para obtener la versión más reciente, busca el APK llamado
GHSAFM-version-targetcommissioner-debug.apk
en la sección Recursos. No seleccionesdefault
.Instala el comisionado de destino.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
En la pantalla principal, presiona el dispositivo para mostrar su información. Presiona Compartir.
La app de ejemplo llama a la API de Mobile SDK Share y, una vez más, se transfiere el control a Play services.
Aparecerá una hoja para compartir, en la que podrás elegir la app o plataforma con la que quieras vincular el dispositivo. Esta pantalla te ofrece dos formas de compartir el dispositivo:
- De forma manual, a través de un código de configuración que se compartirá con la app del comisionado de destino
- Con una app para Android local que se haya registrado como comisionado de Matter
La app del comisionado de destino está etiquetada como GHSAFM-TC. Presiona esta instancia de la app de ejemplo para compartir tu dispositivo.
A continuación, 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.Notificación de mitad de hoja
En la pantalla Configuración, puedes inhabilitar las notificaciones de descubrimiento comisionables proactivas para dispositivos Matter.
Si tu aplicación proporciona su propio flujo de descubrimiento o comisión de Matter, te recomendamos que suprimas estas notificaciones para evitar interrupciones. Consulta Suprimir notificaciones de descubrimiento comisión 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:
Haz clic en Registrar contenido de repositorios.
Haz clic en Aceptar en el diálogo y, luego, marca Logcat.
Comentarios y ayuda
Para enviar tus comentarios sobre cómo podemos mejorar la experiencia de desarrollo con Sample App for Matter, completa nuestro formulario de comentarios.
Si tienes problemas con Sample App for Matter, intenta completar los pasos para verificar tu entorno:
Si tienes preguntas sobre el uso de la app de ejemplo o descubres un error de código, puedes enviar los problemas al sistema de seguimiento de errores del repositorio de GitHub:
Para obtener orientación oficial de Google sobre preguntas técnicas, consulta el Foro de desarrolladores de casa inteligente:
Para obtener asistencia técnica de la comunidad, usa la etiqueta google-smart-home
en
Stack Overflow: