Google Home Sample App for Matter utilise Google Home Mobile SDK pour créer une application Android semblable à Google Home app (GHA). Cet exemple d'application propose les fonctionnalités suivantes:
- Mettre en service des appareils Matter physiques et virtuels sur le tissu Android local
- Mettre en service des appareils physiques et virtuels sur un tissu de développement
- Contrôler les appareils de votre canevas de développement, par exemple allumer une lumière
- Les fonctionnalités multi-administrateur vous permettent de partager des appareils sur le canevas de développement avec d'autres applications, et inversement d'inclure dans le canevas de développement des appareils partagés à partir d'autres applications.
- Utilitaires pour les développeurs
Ce guide explique comment installer l'APK Sample App for Matter et l'utiliser pour mettre en service, contrôler et partager des appareils Matter.
Pour télécharger le code source, découvrir comment intégrer Mobile SDK et personnaliser les écrans dans Android Studio, essayez notre atelier de programmation Sample App for Matter.
Accédez à l'atelier de programmation Sample App for Matter.
Prérequis
- Un appareil Android O (8.1, niveau d'API 27) ou version ultérieure disponible pour les tests Pour vous assurer que votre appareil dispose de la dernière prise en charge de Matter, consultez le guide Vérifier les modules et services Matter.
- Créez un appareil Matter avec des fonctionnalités Marche/Arrêt. Cet exemple d'application fonctionne avec un appareil virtuel et un ESP32.
- Appareil virtuel Matter (MVD) Pour minimiser les problèmes d'environnement, nous vous recommandons vivement d'utiliser MVD pour commencer. Si vous rencontrez des problèmes, il sera beaucoup plus facile de les examiner si l'application exemple est utilisée avec MVD.
- Créez un appareil virtuel Matter avec l'application
rootnode_dimmablelight_bCwGYSDpoe
. Lorsque vous créez une intégration Matter dans Google Home Developer Console, utilisez0xFFF1
comme ID du fournisseur et0x8000
comme ID du produit. - Créez un appareil Espressif avec
all-clusters-app
. Lorsque vous créez une intégration Matter dans Developer Console, utilisez0xFFF1
comme ID du fournisseur et0x8001
comme ID du produit.
Vous n'avez pas besoin d'un hub, par exemple un Google Nest Hub (2nd gen), pour mettre en service et contrôler des appareils avec le Sample App for Matter.
Installer
Accédez à la section Releases (Versions) du dépôt GitHub Sample App for Matter. Pour la version la plus récente, recherchez dans la section "Composants" l'APK nommé
GHSAFM-version-default-debug.apk
. Ne sélectionnez pastargetcommissioner
.Installez Android Debug Bridge (adb):
Connectez votre appareil Android via USB et activez File Transfer (Transfert de fichiers), puis installez l'APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Mettre en service des appareils
Lorsque vous lancez l'application exemple pour la première fois, une boîte de dialogue s'affiche avec un lien vers l'atelier de programmation Sample App for Matter. Si vous sélectionnez Ne plus afficher ce message, vous pouvez à tout moment afficher à nouveau la boîte de dialogue en mettant à jour vos préférences dans la section "Administration" de l'application.
Dans les étapes suivantes, vous allez ajouter un appareil Matter au fabric Android local, ainsi qu'un fabric de développement qui est local uniquement pour l'application exemple.
Que sont les tissus Matter ?
Un fabric Matter est un domaine de confiance partagé entre les appareils d'un réseau domestique, qui leur permet de communiquer entre eux.
Les appareils peuvent avoir un ou plusieurs tissus correspondant à une plate-forme, une application ou un groupe d'appareils qui interagissent entre eux. Les fabrics disposent d'un ID unique, et les appareils partagent le même ensemble d'identifiants et la même autorité de certification (CA). Ces identifiants sont attribués lors de la mise en service de Matter.
Pour mettre en service un appareil Matter, procédez comme suit:
Appuyez sur le bouton
Ajouter un appareil pour lancer le processus de mise en service.Ensuite, le contrôle est transféré à Google Play services, qui est lancé à partir d'un appel à Mobile SDK. Pour prouver que vous êtes le propriétaire, scannez le code QR ou appuyez sur Utiliser un code d'association.
Une fois la mise en service terminée, saisissez un nom d'appareil, puis appuyez sur OK.
Votre appareil est désormais connecté à la structure Android locale et à la structure de développement.
Tout le travail de mise en service et les écrans associés sont gérés par Play services lors de la mise en service des appareils. Cela offre une expérience utilisateur cohérente et élimine le besoin de gérer des autorisations sensibles, par exemple les identifiants Wi-Fi et Thread.
Contrôler des appareils
Le fabric de développement crée les identifiants permettant de contrôler les appareils Matter directement à partir de l'application exemple.
Sur l'écran d'accueil, vous pouvez activer ou désactiver votre appareil. Appuyez sur l'appareil pour accéder à ses informations.
Partager les appareils
Le partage d'un appareil est appelé flux multi-administrateur dans la spécification Matter. Une fois qu'un appareil est mis en service pour l'application exemple, vous pouvez facilement le partager avec d'autres écosystèmes.
Pour partager votre appareil Matter avec d'autres écosystèmes, vous devez installer une autre plate-forme sur votre appareil Android. Cette plate-forme externe devient le commissaire cible. Nous avons créé une autre instance de l'application exemple que vous pouvez utiliser comme commissaire cible.
Accédez à la section Releases (Versions) du dépôt GitHub Sample App for Matter. Pour la version la plus récente, recherchez dans la section "Composants" l'APK nommé
GHSAFM-version-targetcommissioner-debug.apk
. Ne sélectionnez pasdefault
.Installez le commissaire cible.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
Sur l'écran d'accueil, appuyez sur l'appareil pour afficher ses informations. Appuyez sur Partager.
L'application exemple appelle l'API Share Mobile SDK et, une fois de plus, le contrôle est transféré à Play services.
Une feuille de partage s'affiche, vous permettant de choisir l'application ou la plate-forme à laquelle associer l'appareil. Cet écran vous propose deux façons de partager l'appareil:
- Manuellement via un code de configuration à partager avec l'application de l'éditeur cible
- Avec une application Android locale enregistrée en tant que commissaire Matter
L'application du commissaire cible est intitulée GHSAFM-TC. Appuyez sur cette instance de l'application exemple pour partager votre appareil.
Ensuite, l'application externe (commissaire cible) termine la mise en service de l'appareil dans son propre fabric.
Paramètres
Sur l'écran d'accueil, cliquez sur l'icône Paramètres
. Vous pouvez y modifier les préférences utilisateur, obtenir de l'aide et en savoir plus sur l'application.Notification demi-feuille
Sur l'écran "Paramètres", vous pouvez choisir de désactiver les notifications de découverte proactive pouvant générer des commissions pour les appareils Matter.
Si votre application fournit son propre flux de découverte ou de mise en service Matter, vous pouvez supprimer ces notifications pour éviter les interruptions. Pour en savoir plus, consultez Supprimer les notifications de découverte pouvant générer des commissions.
Utilitaires pour les développeurs
Sur l'écran "Paramètres", vous pouvez également accéder aux utilitaires pour les développeurs.
Pour examiner le contenu des dépôts DataStore des préférences de l'appareil et de l'utilisateur dans Logcat, procédez comme suit:
Cliquez sur Enregistrer le contenu des dépôts.
Cliquez sur OK dans la boîte de dialogue, puis cochez Logcat.
Commentaires et aide
Pour nous faire part de vos commentaires sur la façon dont nous pouvons améliorer l'expérience de développement avec Sample App for Matter, remplissez notre formulaire de commentaires.
Si vous rencontrez des problèmes avec Sample App for Matter, essayez de suivre la procédure de validation de votre environnement:
Si vous avez des questions sur l'utilisation de l'application exemple ou si vous découvrez un bug de code, vous pouvez signaler les problèmes dans l'outil de suivi des problèmes du dépôt GitHub:
Pour obtenir des conseils officiels de Google sur des questions techniques, utilisez le forum des développeurs de la maison connectée:
Pour obtenir une assistance technique de la communauté, utilisez la balise google-smart-home
sur Stack Overflow: