El objeto 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 Tejido local de Android
- Asigna dispositivos físicos y virtuales a un tejido 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, aprende a integrar el Mobile SDK y personaliza pantallas en Android Studio, prueba nuestra Sample App for Matter.
Ir 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 funciones de encendido y apagado. Esta
la app de ejemplo funciona con un dispositivo virtual y un ESP32.
- Dispositivo Virtual de Matter (MVD). Para minimizar los problemas del entorno, te sugerimos que uses MVD para comenzar. Si alguna vez tienes problemas, será mucho más fácil investigar si la app de ejemplo se usa en función del MVD.
- Compila un dispositivo virtual de Matter
con la app de
rootnode_dimmablelight_bCwGYSDpoe
. Cuando Crea una integración de Matter en el Google Home Developer Console utiliza0xFFF1
como tu ID de proveedor y0x8000
como tu ID de producto. - Cómo compilar un dispositivo Espressif
con el
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 realizar la comisión y controlar dispositivos con Sample App for Matter.
Instalar
Ve a la sección Lanzamientos. en el GitHub de Sample App for Matter en un repositorio de confianza. Para ver la versión más reciente, busca la sección Recursos el APK llamado
GHSAFM-version-default-debug.apk
No seleccionestargetcommissioner
Instala Android Debug Bridge (adb):
Conecta el dispositivo Android por 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, aparecerá un diálogo con Un vínculo al codelab de Sample App for Matter Si seleccionas No volver a mostrar este mensaje, puedes hacer que el diálogo vuelva a aparecer 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 La estructura local de Android, junto con una estructura de desarrollo local para la muestra en la app.
¿Qué son las telas Matter?
Una estructura Matter es un dominio de confianza compartido entre dispositivos en una red doméstica que les permite comunicarse entre sí.
Los dispositivos pueden tener una o más estructuras que corresponden a una plataforma, app o grupo de dispositivos que interactúan entre sí. Los tejidos tienen un ID y los dispositivos compartan el mismo conjunto de credenciales y autoridad certificadora (CA). Estas credenciales se asignan durante Matter. puesta en servicio.
Para encargar un dispositivo Matter, completa los siguientes pasos:
Presiona el botón
Agregar Botón del dispositivo para iniciar el proceso de comisión.Luego, el control se transfiere a Google Play services, que se inicia de una llamada a Mobile SDK. Establecer evidencia de posesión, Escanear código QR o presionar Usar código de vinculación
Cuando se complete la puesta en marcha, ingresa un Nombre del dispositivo y presiona Listo.
Ahora, el dispositivo está conectado a la estructura local de Android y a la tejido de desarrollo.
Play services controla todo el trabajo de comisión y las pantallas asociadas cuando se comisionan los dispositivos. Esta brinda una experiencia del usuario coherente y elimina la necesidad de manipular datos sensibles permisos, por ejemplo, credenciales de Wi-Fi y Thread.
Controla dispositivos
El tejido de desarrollo crea las credenciales para controlar Dispositivos Matter directamente desde la app de ejemplo.
En la pantalla principal, puedes activar o desactivar el dispositivo. Toca el acceder a los detalles del dispositivo.
Compartir dispositivos
El uso compartido de un dispositivo se conoce como flujo de varios administradores en la la especificación Matter. Una vez que se pone en marcha un dispositivo con la app de ejemplo, puedes compartirlo fácilmente con otros ecosistemas.
Para compartir tu dispositivo Matter con otros ecosistemas, haz lo siguiente: 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 Lanzamientos. en el GitHub de Sample App for Matter en un repositorio de confianza. Para ver la versión más reciente, busca 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 ver su información. Toque 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 compartida que te permitirá elegir la app o la plataforma con la que quieres vincular el dispositivo. Esta pantalla te ofrece dos maneras 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 haya registrado como comisionado de Matter
La app del comisionado objetivo está etiquetada como GHSAFM-TC. Presiona esta instancia de la app de ejemplo para compartir tu dispositivo.
Luego, la app externa (comisionado objetivo) completa la comisión de la dispositivo en su propia estructura.
Configuración
En la pantalla principal, haz clic en la configuración Ícono de
. Aquí tienes las opciones actualizar las preferencias de los usuarios, obtener ayuda y obtener más información sobre la aplicaciónNotificación de mitad de hoja
En la pantalla Configuración, puedes inhabilitar las comisiones proactivas notificaciones de descubrimiento para Matter dispositivos.
Si tu aplicación proporciona su propio flujo de descubrimiento o comisión de Matter, te recomendamos que suprimas estas notificaciones para evitar interrupciones. Consulte Cómo suprimir el descubrimiento por comisión notificaciones 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 DataStore de preferencias del usuario y del dispositivo en Logcat, completa los siguientes pasos:
Haz clic en Registrar contenido de repositorios.
Haz clic en OK en el diálogo y, luego, marca Logcat.
Comentarios y ayuda
Enviar tus opiniones o comentarios sobre cómo podemos mejorar el desarrollo. experiencia con Sample App for Matter, completa nuestro formulario de comentarios.
Si tienes problemas con Sample App for Matter, intenta completar sigue estos pasos para verificar tu entorno:
Si tienes preguntas sobre el uso de la app de ejemplo o descubres un error de código, puedes puedes enviar problemas a la Herramienta de seguimiento de errores del repositorio de GitHub:
Para obtener orientación oficial de Google sobre preguntas técnicas, usa la app de Casa inteligente Foro de desarrolladores:
Para obtener asistencia técnica de la comunidad, usa la etiqueta google-smart-home
en
Stack Overflow: