Google Home Sample App for Matter używa Google Home Mobile SDK do utworzenia aplikacji na Androida podobnej do Google Home app (GHA). Ta przykładowa aplikacja udostępnia te funkcje:
- Utwórz fizyczne i wirtualne urządzenia Matter w ramach usługi Local Android fabric
- Zamawianie fizycznych i wirtualnych urządzeń do środowiska programistycznego
- sterować urządzeniami w swoim środowisku deweloperskim, na przykład włączać światło;
- Funkcje dotyczące wielu administratorów umożliwiają udostępnianie urządzeń w sieć rozwojową innym aplikacjom i odwrotnie – dołączanie do sieci rozwojowej urządzeń udostępnionych z innych aplikacji.
- Narzędzia dla programistów
W tym przewodniku opisano, jak zainstalować plik APK Sample App for Matter i jak go używać do konfigurowania, kontrolowania i udostępniania urządzeń Matter.
Aby pobrać kod źródłowy, dowiedzieć się, jak zintegrować Mobile SDK, i spersonalizować ekrany w Android Studio, skorzystaj z kursu Sample App for Matter.
Otwórz Codelab Sample App for Matter
Wymagania wstępne
- Urządzenie z Androidem O (8.1, poziom interfejsu API 27) lub nowszym dostępne do testowania. Aby mieć pewność, że Twoje urządzenie jest obsługiwane przez najnowszą wersję Matter, zapoznaj się z instrukcją weryfikacji modułów i usług Matter.
- Utwórz urządzenie Matter z opcją włączania i wyłączania. Ta przykładowa aplikacja działa z urządzeniem wirtualnym i ESP32.
- Wirtualne urządzenie Matter (MVD). Aby zminimalizować problemy ze środowiskiem, zdecydowanie zalecamy, aby na początek użyć MVD. Jeśli kiedykolwiek napotkasz problemy, łatwiej będzie Ci sprawdzić, czy przykładowa aplikacja jest używana w stosunku do MVD.
- Utwórz wirtualne urządzenie Matter za pomocą aplikacji
rootnode_dimmablelight_bCwGYSDpoe
. Gdy tworzysz integrację Matter w Google Home Developer Console, użyj0xFFF1
jako identyfikatora dostawcy i0x8000
jako identyfikatora produktu. - Utwórz urządzenie Espressif za pomocą
all-clusters-app
. Gdy tworzysz integrację Matter w Developer Console, użyj wartości0xFFF1
jako identyfikatora dostawcy i0x8001
jako identyfikatora produktu.
Aby konfigurować i sterować urządzeniami za pomocą Sample App for Matter, nie musisz używać koncentratora, na przykład Google Nest Hub (2nd gen).
Zainstaluj
Otwórz sekcję Releases (Publikacje) w repozytorium GitHub Sample App for Matter. Najnowszą wersję znajdziesz w sekcji Zasoby, w pliku APK o nazwie
GHSAFM-version-default-debug.apk
. Nie wybieraj opcjitargetcommissioner
.Instalowanie Android Debug Bridge (adb):
Podłącz urządzenie z Androidem do komputera za pomocą kabla USB i włącz Przekazywanie plików, a następnie zainstaluj plik APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Konfigurowanie urządzeń
Gdy uruchomisz przykładową aplikację po raz pierwszy, pojawi się okno z linkiem do Sample App for Matter Codelab. Jeśli wybierzesz opcję Nie pokazuj więcej tego komunikatu, możesz w dowolnym momencie przywrócić okno, aktualizując preferencje w sekcji Administracja aplikacji.
W następnych krokach dodasz urządzenie Matter do lokalnego komponentu Androida oraz komponentu deweloperskiego, który jest lokalny tylko dla tej konkretnej aplikacji.
Czym są materiały Matter?
Matter to wspólna domena zaufania między urządzeniami w domowej sieci, która umożliwia im komunikowanie się ze sobą.
Urządzenia mogą mieć co najmniej jeden zestaw komponentów odpowiadający platformie, aplikacji lub grupie urządzeń, które ze sobą współpracują. Tkaniny mają unikalny identyfikator, a urządzenia mają ten sam zestaw danych uwierzytelniających i urzędu certyfikacji (CA). Te dane logowania są przypisywane podczas Matteruruchomienia.
Aby uruchomić urządzenie Matter, wykonaj te czynności:
Kliknij przycisk
Dodaj urządzenie, aby rozpocząć proces uruchamiania.Następnie kontrola zostaje przekazana aplikacji Google Play services, która jest uruchamiana z poziomu wywołania aplikacji Mobile SDK. Aby potwierdzić, że urządzenie należy do Ciebie, kliknij Skanuj kod QR lub Użyj kodu parowania.
Po zakończeniu konfiguracji wpisz Nazwa urządzenia i kliknij Gotowe.
Urządzenie jest teraz połączone z lokalną platformą Androida i platformą deweloperską.
Wszystkie czynności związane z uruchomieniem i powiązane z nimi ekrany są obsługiwane przez Play services podczas uruchamiania urządzeń. Zapewnia to spójne wrażenia użytkownika i eliminuje potrzebę obsługi poufnych uprawnień, takich jak dane logowania do Wi-Fi i Thread.
Sterowanie urządzeniami
Platforma programistyczna tworzy dane logowania do sterowania urządzeniamiMatter bezpośrednio z aplikacji przykładowej.
Na ekranie głównym możesz przełączyć urządzenie w stan włączenia lub wyłączenia. Kliknij urządzenie, aby uzyskać dostęp do jego szczegółów.
Udostępnianie urządzeń
Udostępnianie urządzenia jest w specyfikacji Matter określane jako proces wieloadministracyjny. Po zainstalowaniu na urządzeniu przykładowej aplikacji możesz ją łatwo udostępnić innym systemom.
Aby udostępniać urządzenie Matter innym systemom, musisz mieć na urządzeniu z Androidem zainstalowaną inną platformę. Ta zewnętrzna platforma staje się docelowym zleceniodawcą. Utworzyliśmy kolejną instancję przykładowej aplikacji, której możesz użyć jako zleceniodawcy docelowego.
Otwórz sekcję Releases (Wersje) w repozytorium GitHub Sample App for Matter. Najnowszą wersję znajdziesz w sekcji Zasoby, w pliku APK o nazwie
GHSAFM-version-targetcommissioner-debug.apk
. Nie wybieraj opcjidefault
.Zainstaluj komisarza docelowego.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
Na ekranie głównym kliknij urządzenie, aby wyświetlić informacje o nim. Kliknij Udostępnij.
Przykładowa aplikacja wywołuje interfejs API udostępniania Mobile SDK i ponownie przekazuje kontrolę do Play services.
Wyświetli się panel udostępniania, na którym możesz wybrać aplikację lub platformę, z którą chcesz sparować urządzenie. Na tym ekranie możesz udostępnić urządzenie na 2 sposoby:
- Ręcznie za pomocą kodu konfiguracyjnego, który należy udostępnić aplikacji docelowego zleceniodawcy.
- za pomocą lokalnej aplikacji na Androida zarejestrowanej jako komisarz Matter
Docelowa aplikacja komisarza ma etykietę GHSAFM-TC. Kliknij tę instancję przykładowej aplikacji, aby udostępnić urządzenie.
Następnie aplikacja zewnętrzna (target commissioner) kończy uruchamianie urządzenia w ramach własnej architektury.
Ustawienia
Na ekranie głównym kliknij ikonę ustawień
. Możesz tu zaktualizować preferencje użytkownika, uzyskać pomoc i dowiedzieć się więcej o aplikacji.Powiadomienie w połowie ekranu
Na ekranie Ustawienia możesz wyłączyć proaktywne powiadomienia o możliwości zarobku w przypadku urządzeń Matter.
Jeśli Twoja aplikacja zapewnia własny proces Matterwyszukiwania lub zlecania, możesz chcieć wyłączyć te powiadomienia, aby zapobiec przerwom. Więcej informacji znajdziesz w artykule Wyłączenie powiadomień o możliwości odkrycia z możliwością zarobku.
Narzędzia dla programistów
Na ekranie Ustawienia możesz też otworzyć Narzędzia dla programistów.
Aby sprawdzić zawartość repozytoriów DataStore preferencji urządzenia i użytkownika w Logcat, wykonaj te czynności:
Kliknij Zapisz zawartość repozytorium.
Kliknij OK w oknie dialogowym, a następnie sprawdź Logcat.
Opinie i pomoc
Aby przesłać swoje opinie na temat tego, jak możemy ulepszyć proces tworzenia aplikacji w usłudze Sample App for Matter, wypełnij formularz opinii.
Jeśli masz problemy z Sample App for Matter, wykonaj te czynności, aby sprawdzić środowisko:
Jeśli masz pytania dotyczące korzystania z przykładowej aplikacji lub znajdziesz błąd w kodzie, możesz przesłać zgłoszenie w systemie śledzenia błędów w repozytorium GitHub:
Aby uzyskać oficjalne wskazówki Google dotyczące pytań technicznych, skorzystaj z forum dla programistów urządzeń Smart Home:
Aby uzyskać pomoc techniczną od społeczności, użyj tagu google-smart-home
na Stack Overflow: