Google Home Sample App for Matter korzysta z Google Home Mobile SDK, aby utworzyć aplikację na Androida podobną do Google Home app (GHA). Ta przykładowa aplikacja oferuje te funkcje:
- Uruchom fizyczne i wirtualne Matter urządzenia w Matterlokalnej infrastrukturze Androida.
- Uruchamianie urządzeń fizycznych i wirtualnych w środowisku deweloperskim
- sterować urządzeniami w środowisku deweloperskim, np. włączać światło;
- Funkcje wielu administratorów umożliwiają udostępnianie urządzeń w środowisku deweloperskim innym aplikacjom i odwrotnie – włączanie do środowiska deweloperskiego urządzeń udostępnionych przez inne aplikacje.
- Narzędzia dla programistów
Z tego przewodnika dowiesz się, jak zainstalować plik APK Sample App for Matter i używać go do uruchamiania, sterowania i udostępniania urządzeń Matter.
Aby pobrać kod źródłowy, dowiedzieć się, jak zintegrować Mobile SDK i dostosować ekrany w Android Studio, skorzystaj z naszego kursu Mobile SDK.Sample App for Matter
Otwórz Sample App for Matter codelab
Wymagania wstępne
- Urządzenie z Androidem O (8.1, poziom interfejsu API 27) lub nowszym, które można wykorzystać do testowania. Aby upewnić się, że urządzenie ma najnowszą Matter wersję, zapoznaj się z przewodnikiem Weryfikowanie Matter modułów i usług.
- Stwórz Matter urządzenie z funkcją 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 rozpoczęcie od MVD. Jeśli napotkasz problemy, łatwiej będzie je zbadać, jeśli aplikacja przykładowa będzie używana w odniesieniu do MVD.
- Utwórz Matter urządzenie wirtualne w aplikacji
rootnode_dimmablelight_bCwGYSDpoe
. Gdy utworzysz Matter integrację w Google Home Developer Console, użyj0xFFF1
jako identyfikatora dostawcy i0x8000
jako identyfikatora produktu. - Zbuduj urządzenie Espressif
za pomocą
all-clusters-app
. Gdy tworzysz Matterintegrację w Developer Console, użyj0xFFF1
jako identyfikatora dostawcy i0x8001
jako identyfikatora produktu.
Aby włączyć i sterować urządzeniami za pomocą Sample App for Matter, nie potrzebujesz centrali, np. Google Nest Hub (2nd gen).
Zainstaluj
Otwórz sekcję Wersje w repozytorium Sample App for Matter GitHubSample App for Matter. Najnowszą wersję znajdziesz w sekcji Zasoby. Będzie to plik APK o nazwie
GHSAFM-version-default-debug.apk
. Nie wybierajtargetcommissioner
.Zainstaluj Android Debug Bridge (adb):
Podłącz urządzenie z Androidem za pomocą USB i włącz przesyłanie 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 dialogowe z linkiem do Sample App for Matterwarsztatów. Jeśli klikniesz Nie pokazuj więcej tego komunikatu, możesz w dowolnym momencie przywrócić okno dialogowe, aktualizując ustawienia w sekcji Administracja w aplikacji.
W kolejnych krokach dodasz Matter urządzenie do lokalnej struktury Androida oraz strukturę deweloperską, która będzie lokalna tylko dla aplikacji przykładowej.
Czym są tkaniny Matter?
MatterSieć to wspólna domena zaufania między urządzeniami w sieci domowej, która umożliwia im komunikowanie się ze sobą.
Urządzenia mogą mieć co najmniej jedną strukturę odpowiadającą platformie, aplikacji lub grupie urządzeń, które ze sobą współpracują. Struktury mają unikalny identyfikator, a urządzenia korzystają z tego samego zestawu danych logowania i urzędu certyfikacji (CA). Te dane logowania są przypisywane podczas Matter uruchamiania.
Aby uruchomić urządzenie Matter, wykonaj te czynności:
Aby rozpocząć proces uruchamiania, kliknij przycisk
Dodaj urządzenie.Następnie sterowanie jest przekazywane do Google Play services, które jest uruchamiane w wyniku wywołania Mobile SDK. Aby potwierdzić własność, zeskanuj kod QR lub kliknij Użyj kodu parowania.
Po zakończeniu konfiguracji wpisz nazwę urządzenia i kliknij Gotowe.
Urządzenie jest teraz połączone zarówno z lokalną platformą Androida, jak i z platformą deweloperską.
Cała praca związana z uruchamianiem i powiązane z nią ekrany są obsługiwane przez Play services podczas uruchamiania urządzeń. Zapewnia to spójne wrażenia użytkownika i eliminuje konieczność obsługi uprawnień dostępu do danych wrażliwych, np. danych logowania do Wi-Fi i Thread.
Sterowanie urządzeniami
Platforma deweloperska tworzy dane logowania do sterowaniaMatter urządzeniami bezpośrednio z aplikacji przykładowej.
Na ekranie głównym możesz włączyć lub wyłączyć urządzenie. Kliknij urządzenie, aby uzyskać dostęp do jego szczegółów.
Udostępnianie urządzeń
Udostępnianie urządzenia jest określane w specyfikacji jako proces z wieloma administratorami.Matter Po przypisaniu urządzenia do aplikacji przykładowej możesz łatwo udostępnić je innym ekosystemom.
Aby udostępnić urządzenie Matter w innych ekosystemach, musisz mieć na urządzeniu z Androidem zainstalowaną inną platformę. Ta platforma zewnętrzna staje się komisjonerem docelowym. Utworzyliśmy kolejną instancję przykładowej aplikacji, której możesz użyć jako docelowego podmiotu zlecającego.
Otwórz sekcję Wersje w repozytorium Sample App for Matter GitHubSample App for Matter. Najnowszą wersję znajdziesz w sekcji Zasoby. Będzie to plik APK o nazwie
GHSAFM-version-targetcommissioner-debug.apk
. Nie wybierajdefault
.Zainstaluj docelowego komisarza.
$ 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 Mobile SDK Share API i ponownie sterowanie jest przekazywane do Play services.
Wyświetli się arkusz udostępniania, w 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 konfiguracji, który należy udostępnić docelowej aplikacji do obsługi urządzeń;
- Za pomocą lokalnej aplikacji na Androida, która została zarejestrowana jako Matterkomisarz
Aplikacja komisarza docelowego jest oznaczona etykietą GHSAFM-TC. Kliknij tę instancję aplikacji przykładowej, aby udostępnić urządzenie.
Następnie aplikacja zewnętrzna (komisarz docelowy) kończy proces włączenia urządzenia do własnej struktury.
Ustawienia
Na ekranie głównym kliknij ikonę ustawień
. Możesz tu zaktualizować ustawienia użytkownika, uzyskać pomoc i dowiedzieć się więcej o aplikacji.Powiadomienie na pół strony
Na ekranie Ustawienia możesz wyłączyć proaktywne powiadomienia o odkrywaniu produktów z prowizją na urządzeniach Matter.
Jeśli Twoja aplikacja udostępnia własny proces Matter odkrywania lub zamawiania, możesz wyłączyć te powiadomienia, aby zapobiec przerwom. Więcej informacji znajdziesz w sekcji Wyłączanie powiadomień o odkrywaniu treści, za które można otrzymać prowizję.
Narzędzia dla programistów
Na ekranie Ustawienia możesz też otworzyć Narzędzia dla programistów.
Aby sprawdzić zawartość repozytoriów Device and User Preferences DataStore w Logcat:
Kliknij Log repositories content (Rejestruj treści z repozytoriów).
W oknie dialogowym kliknij OK, a następnie zaznacz Logcat.
Opinie i pomoc
Jeśli chcesz przesłać swoje przemyślenia lub opinię na temat tego, jak możemy ulepszyć środowisko programistyczne Sample App for Matter, wypełnij nasz formularz opinii.
Jeśli masz problemy z Sample App for Matter, wykonaj te czynności, aby zweryfikować środowisko:
Jeśli masz pytania dotyczące korzystania z przykładowej aplikacji lub znajdziesz błąd w kodzie, możesz zgłosić problem w narzędziu Issue Tracker w repozytorium GitHub:
Aby uzyskać oficjalne wskazówki od Google dotyczące pytań technicznych, skorzystaj z Forum dla deweloperów inteligentnego domu:
Aby uzyskać pomoc techniczną od społeczności, użyj tagu google-smart-home
na stronie Stack Overflow: