Google Home Sample App for Matter używa Google Home Mobile SDK do tworzenia aplikacji na Androida podobnej 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
. Podczas tworzenia integracji Matter 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. Jest 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 Mattercodelabu. Jeśli klikniesz Nie pokazuj więcej tego komunikatu, możesz w dowolnym momencie przywrócić okno dialogowe, aktualizując ustawienia w sekcji Administracja 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ą materiały 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 1 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ą strukturą Androida, jak i ze strukturą 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 sieci Wi-Fi i Thread.
Sterowanie urządzeniami
Środowisko deweloperskie tworzy dane logowania, które umożliwiają sterowanieMatter 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. Jest to plik APK o nazwie
GHSAFM-version-targetcommissioner-debug.apk
. Nie wybierajdefault
.Zainstaluj docelowego administratora.
$ 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 komisarza;
- 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 wdrażanie urządzenia w swojej sieci.
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, za które przysługuje prowizja, 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 kwestii technicznych, skorzystaj z Forum dla programistów Smart Home:
Aby uzyskać pomoc techniczną od społeczności, użyj tagu google-smart-home
na stronie Stack Overflow: