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 a la estructura local de Android
- Encarga dispositivos físicos y virtuales a un tejido de desarrollo
- Controlar dispositivos en la estructura de desarrollo, por ejemplo, encender una luz
- Las funciones de administración múltiple te permiten compartir dispositivos en la estructura de desarrollo con otras apps y, por el contrario, poder incluirlos en los dispositivos de la estructura de desarrollo 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 asignar, 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.
Ir al codelab de Sample App for Matter
Requisitos previos
- Un dispositivo con Android O (8.1, nivel de API 27) o un dispositivo más reciente 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 funciones 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 para comenzar. Si alguna vez tienes problemas, será mucho más fácil investigar si la app de ejemplo se usa con la MVD.
- Compila un dispositivo virtual Matter con la app
rootnode_dimmablelight_bCwGYSDpoe
. Cuando crees una integración Matter en Google Home Developer Console, usa0xFFF1
como ID de proveedor y0x8000
como ID del producto. - Compila un dispositivo Espressif con el
all-clusters-app
. Cuando crees una integración Matter en Developer Console, usa0xFFF1
como el ID del proveedor y0x8001
como el ID del producto.
No necesitas un concentrador, por ejemplo, un Google Nest Hub (2nd gen), para comisión y control de dispositivos con Sample App for Matter.
Instalar
Ve a la sección Actualizaciones en el repositorio de GitHub Sample App for Matter. Para ver la versión más reciente, busca el APK llamado
GHSAFM-version-default-debug.apk
en la sección Recursos. No selecciones eltargetcommissioner
.Instala Android Debug Bridge (adb):
Conecta tu dispositivo Android con USB y habilita la Transferencia de archivos. Luego, instala el APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Dispositivos de comisión
Cuando inicies la app de ejemplo por primera vez, recibirás un diálogo con un vínculo al codelab de Sample App for Matter. Si seleccionas No volver a mostrar este mensaje, puedes restablecer 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 dispositivos de una red doméstica que les permite comunicarse entre sí.
Los dispositivos pueden tener una o más estructuras que corresponden a una plataforma, una app o un grupo de dispositivos que interactúan entre sí. Las fabricaciones tienen un ID único, y los dispositivos comparten el mismo conjunto de credenciales y autoridad certificadora (CA). Estas credenciales se asignan durante la puesta en marcha de Matter.
Para asignar un dispositivo de Matter, completa los siguientes pasos:
Presiona el botón
Agregar dispositivo para iniciar el proceso de comisión.A continuación, se transfiere el control a Google Play services, que se inicia desde una llamada a Mobile SDK. Para comprobar la 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 a la estructura local de Android y a la de desarrollo.
Play services controla todo el trabajo de asignación y las pantallas asociadas cuando se asignan dispositivos. Esto proporciona una experiencia del usuario coherente y quita la necesidad de controlar permisos sensibles, como 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.
Desde la pantalla principal, puedes activar o desactivar el dispositivo. Presiona el dispositivo para acceder a sus detalles.
Compartir dispositivos
Compartir un dispositivo se conoce como flujo de administración múltiple en la especificación Matter. Una vez que se pone 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 instalada otra plataforma en tu dispositivo Android. Esta plataforma externa se convierte en el comisionado objetivo. Creamos otra instancia de la app de ejemplo que puedes usar como comisión de destino.
Ve a la sección Actualizaciones en el repositorio de GitHub Sample App for Matter. Para ver la versión más reciente, busca el APK llamado
GHSAFM-version-targetcommissioner-debug.apk
en la sección Recursos. No selecciones eldefault
.Instala el comisionado objetivo.
$ 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, el control se transfiere a Play services.
Aparecerá una hoja para compartir, que te permitirá elegir la app o la plataforma con la que deseas vincular el dispositivo. En esta pantalla, se muestran 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 objetivo
- Con una app para Android local que se registró como encargado de Matter
La app del comisionado objetivo está etiquetada como GHSAFM-TC. Presiona esta instancia de la app de ejemplo para compartir tu dispositivo.
A continuación, la app externa (comisionado de destino) completa la asignación del dispositivo en su propia estructura.
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 media hoja
En la pantalla Configuración, puedes inhabilitar las notificaciones de descubrimiento proactivas por comisión para los dispositivos Matter.
Si tu aplicación proporciona su propio flujo de detección o comisión de Matter, te recomendamos suprimir estas notificaciones para evitar interrupciones. Consulta Suprimir notificaciones de descubrimiento comisionables para obtener más información.
Utilidades para desarrolladores
Desde la pantalla Configuración, también puedes acceder a las Utilidades para desarrolladores.
Para revisar el contenido de los repositorios de Device Preferences DataStore y User Preferences en Logcat, completa los siguientes pasos:
Haz clic en Contenido de repositorios de registros (Log Repositories content).
Haz clic en OK en el diálogo y, luego, marca Logcat.
Comentarios y ayuda
Si quieres enviar tu opinión o 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 problemas a la Herramienta de seguimiento de errores en el repositorio de GitHub:
Para obtener orientación oficial de Google sobre preguntas técnicas, consulta el foro de desarrolladores de casas inteligentes:
Para obtener asistencia técnica de la comunidad, usa la etiqueta google-smart-home
en Stack Overflow: