Google Home Sample App for Matter 會使用 Google Home Mobile SDK 建立類似 Google Home app (GHA) 的 Android 應用程式。這個範例應用程式提供下列功能:
- 將實體和虛擬 Matter 裝置委託本機 Android 架構執行
- 將實體和虛擬裝置委託開發架構
- 控制開發結構體上的裝置,例如開燈
- 多重管理員功能可讓您在開發架構上與其他應用程式共用裝置,也能納入由其他應用程式共用的開發工廠裝置
- 開發人員公用程式
本指南說明如何安裝 Sample App for Matter APK,並用於啟用、控制及共用 Matter 裝置。
如要下載原始碼,瞭解如何整合 Mobile SDK 並在 Android Studio 中自訂畫面,請嘗試使用 Sample App for Matter 程式碼研究室。
前往 Sample App for Matter 程式碼研究室
必要條件
- 搭載 Android O (8.1,API 級別 27) 以上版本的裝置,可供測試。如要確認裝置支援最新的 Matter,請參閱「驗證 Matter 模組和服務」指南。
- 打造具備開啟/關閉功能的 Matter 裝置。這個範例應用程式可搭配虛擬裝置和 ESP32 使用。
- Matter 虛擬裝置 (MVD)。為盡量減少環境問題,我們強烈建議您一開始使用 MVD。如果遇到問題,您可以輕鬆調查是否使用範例應用程式對抗 MVD。
- 使用
rootnode_dimmablelight_bCwGYSDpoe
應用程式建構 Matter 虛擬裝置。在 Google Home Developer Console 中建立 Matter 整合時,請將0xFFF1
做為供應商 ID,並將0x8000
做為產品 ID。 - 使用
all-clusters-app
建構 Espressif 裝置。在 Developer Console 中建立 Matter 整合時,請使用0xFFF1
做為廠商 ID,並使用0x8001
做為產品 ID。
您不需要中樞裝置 (例如 Google Nest Hub (2nd gen)),即可透過 Sample App for Matter 啟用及控制裝置。
安裝
前往 Sample App for Matter GitHub 存放區的版本部分。如需最新版本,請在「Assets」部分找出名為
GHSAFM-version-default-debug.apk
的 APK。請勿選取targetcommissioner
。安裝 Android Debug Bridge (ADB):
使用 USB 連接 Android 裝置並啟用檔案傳輸,然後安裝 APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
委任裝置
首次啟動範例應用程式時,您會看到一個對話方塊,其中包含 Sample App for Matter 程式碼研究室的連結。如果您選取「不要再顯示這則訊息」,只要在應用程式的「管理」部分更新偏好設定,隨時都可以再次顯示對話方塊。
在後續步驟中,您將在本機 Android 架構中新增 Matter 裝置,以及僅在範例應用程式本機的開發架構。
什麼是 Matter 架構?
Matter 架構是家用網路中裝置間的共用網域,可讓裝置彼此通訊。
裝置可能包含一或多個織布,對應一個平台、應用程式或一組裝置搭配互動。結構體具有專屬 ID,且裝置共用相同的憑證和憑證授權單位 (CA)。這些憑證會在 Matter 調試期間指派。
如要啟用 Matter 裝置,請完成下列步驟:
輕觸「新增裝置」按鈕
,即可開始調試程序。接著,控制權會轉移至 Google Play services,該函式會透過對 Mobile SDK 的呼叫啟動。如要證明你擁有裝置,請按一下「掃描 QR code」或「使用配對碼」。
委派完成後,請輸入「裝置名稱」,然後輕觸「完成」。
您的裝置現在已連線至本機 Android 結構體和開發結構體。
調試裝置時,所有調校工作和相關畫面都會由 Play services 處理。這可提供一致的使用者體驗,並免除處理敏感權限 (例如 Wi-Fi 和 Thread 憑證) 的必要性。
控制裝置
開發結構體會直接透過範例應用程式建立憑證,以便控制 Matter 裝置。
在主畫面上,您可以將裝置切換為「開啟」或「關閉」。輕觸裝置即可存取裝置詳細資料。
共用裝置
在 Matter 規格中,裝置共用功能稱為「多管理員流程」。裝置委託範例應用程式後,您可以輕鬆將其分享給其他生態系統。
如要與其他生態系統共用 Matter 裝置,則您必須在 Android 裝置上安裝其他平台。這個外部平台會成為「目標代理程式」。我們已建立另一個範例應用程式執行個體,可做為目標委派者使用。
前往 Sample App for Matter GitHub 存放區的「Releases」部分。如需最新版本,請在「Assets」部分找出名為
GHSAFM-version-targetcommissioner-debug.apk
的 APK。請勿選取default
。安裝目標委託工具。
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
在主畫面上,輕觸裝置即可顯示裝置資訊。輕觸「分享」。
範例應用程式會呼叫 Mobile SDK Share API,然後再次將控制權轉移至 Play services。
系統會顯示分享工作表,讓您選擇要與哪個應用程式或平台配對裝置。這個畫面提供兩種分享裝置的方式:
- 透過手動設定代碼與目標委任者應用程式共用
- 使用已註冊為 Matter 代理程式的本機 Android 應用程式
目標委派應用程式標示為 GHSAFM-TC。輕觸範例應用程式的執行個體,即可共用裝置。
接著,外部應用程式 (目標委派者) 會將裝置委派至其專屬結構體,完成委派作業。
設定
在主畫面上,按一下「設定」圖示
。您可以利用此選項更新使用者偏好設定、取得說明及進一步瞭解應用程式。半頁通知
您可以在「設定」畫面中,選擇停用 Matter 裝置的主動可佣金發現通知。
如果應用程式提供自己的 Matter 探索或委派流程,您可能會想抑制這些通知,以免造成中斷。詳情請參閱「隱藏可收取佣金的探索功能通知」。
開發人員公用程式
您也可以透過「設定」畫面存取開發人員公用程式。
如要在 Logcat 中查看裝置和使用者偏好設定 DataStore 存放區的內容,請完成下列步驟:
按一下「記錄存放區內容」。
按一下對話方塊中的「OK」,然後勾選「Logcat」。
意見回饋和說明
歡迎填寫意見回饋表單,與我們分享您的想法或意見,協助我們改善 Sample App for Matter 的開發體驗。
如果您遇到 Sample App for Matter 相關問題,請嘗試完成驗證環境的步驟:
如果您對使用範例應用程式有任何疑問,或發現程式碼錯誤,可以將問題提交至 GitHub 存放區中的 Issue Tracker:
如要取得 Google 官方技術問題指南,請使用智慧住宅開發人員論壇:
如要向社群尋求技術支援,請在 Stack Overflow 上使用 google-smart-home
標記: