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:
- Cómo comisionar dispositivos Matter físicos y virtuales al entorno de Android local
- Cómo asignar dispositivos físicos y virtuales a un entorno de desarrollo
- Controlar dispositivos en tu fabric 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 Android O (8.1, nivel de API 27) o versiones posteriores disponible para realizar 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 una unidad central, por ejemplo, un Google Nest Hub (2nd gen), para comisionar 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 y habilita Transferencia de archivos. 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 siguientes pasos, agregarás un dispositivo Matter al tejido de Android local, junto con un tejido de desarrollo que solo sea local para la app de ejemplo.
¿Qué son los tejidos Matter?
Un tejido 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 autoridad certificadora (AC). Estas credenciales se asignan durante la comisión de Matter.
Para encargar 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 comisión, ingresa un Nombre del dispositivo y, luego, presiona Listo.
Tu dispositivo ahora está conectado al tejido de Android local y al tejido 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 entramado 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
El uso compartido de un dispositivo se conoce como flujo de varios administradores en la especificación Matter. 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 la versión más reciente, busca en la sección Recursos el APK llamado
GHSAFM-version-targetcommissioner-debug.apk
. 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 Share de Mobile SDK y, una vez más, el control se transfiere a Play services.
Aparecerá una hoja compartida que te permitirá elegir la app o la plataforma con la que quieres 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 fabric.
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 proactivas comisionables 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 Cómo suprimir las notificaciones de descubrimiento comisionable 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, usa el foro de desarrolladores de la casa inteligente:
Para obtener asistencia técnica de la comunidad, usa la etiqueta google-smart-home
en
Stack Overflow: