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 :
- Commission des appareils Matter physiques et virtuels auprès de la structure Android locale
- Mettre en service des appareils physiques et virtuels sur un tissu de développement
- Contrôler les appareils de votre structure de développement, par exemple l'allumage d'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, apprendre à intégrer Mobile SDK et personnaliser les écrans dans Android Studio, suivez notre atelier de programmation Sample App for Matter.
Accéder à l'atelier de programmation Sample App for Matter
Prérequis
- Un appareil équipé d'Android O (8.1, niveau d'API 27) ou version ultérieure disponible à des fins de test. 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 de commencer par utiliser MVD. 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 fournisseur et0x8001
comme ID 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 à l'aide d'un câble USB et activez le 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 contenant un lien vers l'atelier de programmation Sample App for Matter s'affiche. 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 ?
Une structure 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 qui correspondent à une plate-forme, une application ou un groupe d'appareils qui interagissent entre eux. Les structures ont un identifiant 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 établir la preuve de possession, scannez le code QR ou appuyez sur Utiliser le 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 avoir installé 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 les informations le concernant. 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 porte le libellé 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 des 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
Depuis 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 les questions techniques, consultez le forum des développeurs pour la maison connectée:
Pour obtenir une assistance technique de la part de la communauté, utilisez le tag google-smart-home
sur Stack Overflow: