Android Studio 專用 Google Home 外掛程式

Matter ; Home API

Google Home Plugin for Android Studio 是專為 Google Home 平台開發人員設計和建立。這個外掛程式可讓您存取 Google Assistant Simulator、Cloud Logging 和其他工具,簡化智慧住宅開發程序。

Android Studio 專用 Google Home 外掛程式

安全性通知

如要防止 Android Studio 儲存密鑰和密碼,請完成下列步驟:

  1. 依序點選「檔案」和「設定...」。
  2. 在「Appearance & Behavior」中,展開「System Settings」,然後按一下「Passwords」。
  3. 選取「不儲存,重新啟動後清除密碼」。
Android Studio 專用 Google Home 外掛程式

功能

Google 助理模擬器

如要測試智慧住宅裝置能否與 Google Home 生態系統搭配運作,可以隨時與 Assistant Simulator 互動,不必離開 Android Studio。

Assistant Simulator可讓您輕鬆控制裝置,只要輸入查詢即可,例如「打開燈」。在 Android Studio 中,Assistant Simulator 會根據您的指令,以文字訊息回覆,例如「好的,正在開啟燈具」。

使用 Google 助理模擬器進行測試

查看 Cloud Logging

Google Cloud Logging 提供偵錯資訊和重要指標,讓您深入瞭解動作的使用情形。為簡化開發作業,Google Home Plugin 會在疑難排解期間,直接在程式碼旁顯示即時 Cloud Logging 訊息。

您可以顯示即時記錄,也可以選取日期範圍。

Cloud Logging 檢視畫面

批次語句

Assistant Simulator 對單一語句的回應不具確定性。舉例來說,回覆可以是下列任一詞組:

  • 好的,正在開啟 2 盞燈。
  • 好的,正在開啟 2 盞燈。
  • 好的,我這就開啟 2 盞燈。
  • 好的,我這就開啟 2 盞燈。

如要執行自動化測試,並驗證 Google 整合功能如何與這些不同的回應搭配運作,您可以執行語句指令碼,將批次語句傳送至Assistant Simulator。儲存指令碼後,您可以收集回覆,並針對查詢執行多項測試。

Home Graph 檢視者

Home Graph 檢視器可讓您在瀏覽器中顯示裝置狀態,並啟動 Google Home 測試套件。

Android Debug Bridge (adb) 記錄檢視器

ADB 記錄檢視器可用於查看及分析記錄檔,例如 Matter 裝置記錄檔、Google Home 記錄和 Android 記錄。

安裝

如要在 Android Studio 中安裝 Google Home Plugin,請按照下列步驟操作:

  1. 下載或更新 Android Studio。 下載 Android Studio
  2. 依序前往「File」 >「Settings」 (在 macOS 上則為「Android Studio」 >「Preferences」)。
  3. 在「Plugins」部分,前往「Marketplace」並搜尋 google home。
  4. 安裝工具,然後重新啟動 Android Studio。

您也可以直接從 JetBrains Marketplace 下載此外掛程式。

設定

安裝外掛程式後,您必須完成下列步驟,才能使用 Assistant Simulator 並查看 Cloud Logging:

使用 Google 帳戶登入

您可以透過 Google Home 面板登入開發人員帳戶,授權「Android Studio」代表您與 Google 服務通訊。

  1. 按一下 Android Studio 視窗左側垂直分頁欄中的「Google Home」分頁。

  2. 在「Sign in with」(登入方式) 部分,按一下「Google」啟動瀏覽器。

    Android Studio Google 登入
  3. 選擇與智慧住宅裝置連結的帳戶。

  4. 在「使用 Google 帳戶登入」授權頁面中,按一下「允許」。

  5. 關閉瀏覽器視窗,返回 Android Studio。

您現在應該已登入,並可選擇「登出」。

選取雲端專案

登入後,從下拉式選單中選取「專案」。如要篩選專案清單,請輸入篩選器運算式 (例如 matter),然後按下 Enter。

「Project」(專案) 下拉式選單會根據「Filter」(篩選器) 載入前 100 個專案。退出Android Studio時,系統會保留你的選項。

選取專案

如需專案篩選器的說明,請參閱 Google Cloud 參考資料中的查詢參數。

使用 Google 助理模擬器

如要在 Android Studio 中開啟 Assistant Simulator,請按一下「Google Home Plugin」面板中的「Utterances Panel」。

開啟「語句」面板

您可以透過多種方式將查詢傳送至 Assistant Simulator。接著,我們將逐一介紹各個選項。

輸入查詢並收集回覆

如要與 Assistant Simulator 互動,請輸入查詢並按下 Enter 鍵。

如要重新傳送查詢,請點選查詢結尾的 重新傳送圖示。

提交一或多個查詢後,按一下 「Replay」(重播),即可重新執行查詢並查看回覆。「Utterances」(語句) 面板會追蹤儲存快取中的查詢和回覆。重播只會將新的回應新增至這個內部快取,不會在您每次點選按鈕時複製查詢。

使用 Google 助理模擬器重播語句

按一下「 儲存」,儲存您在「語句」面板中輸入的查詢和回覆。互動會轉換為 JSON,格式如下:

  • ask:查詢。
  • answers:可能 Assistant Simulator 回應的陣列。

您可以在 Android Studio 中編輯這個 JSON 檔案。

{
  "collected": false,
  "lines": [
    {
      "ask": "turn lights on",
      "answers": [
        "OK, turning 2 lights on.",
        "Sure, turning on 2 lights."
      ]
    }
  ]
}

收集批次回覆

在「Google Home Plugin」面板中,按一下「Utterances File」(語句檔案),在新分頁中開啟已儲存的 JSON 檔案。在「Select Path」部分,您可以選擇檔案或資料夾。如果選擇資料夾,Collect 和 Test 會對該資料夾中的所有語句 .json 檔案執行。

您可以為同一個檔案或不同檔案開啟多個分頁,例如 lights、lights(1) 和 plug。

狀態列會顯示上次測試的結果 (如適用)、黃色或綠色圓點 (表示是否已收集檔案),以及語音 .json 檔案路徑。點選「Collect」(收集) 後,Assistant Simulator 會執行查詢。收集到新回覆時,系統會通知您,並在處理查詢時,於狀態列顯示計數器。

使用 Google 助理模擬器收集語句

Collect 完成後,狀態列會更新,在 .json 路徑前方顯示綠色勾號,且語句檔案會填入可能的應答。

使用 Google 助理模擬器收集語句
{
  "collected": true,
  "lines": [
    {
      "ask": "turn lights on",
      "answers": [
        "OK, turning 2 lights on.",
        "Sure, turning on 2 lights.",
        "Sure, turning 2 lights on.",
        "Got it, turning 2 lights on.",
        "Alright, turning on 2 lights.",
        "OK, turning on 2 lights.",
        "Got it, turning on 2 lights.",
        "Alright, turning 2 lights on."
      ]
    }
  ]
}

如果提早停止收集,.json 路徑就不會標示為已收集。

測試批次語句

收集回覆後,請按一下 「Test」(測試),重新執行查詢並檢查回覆和記錄。測試批次語句時,Assistant Simulator 會預期收到儲存至 JSON 檔案的回應。如果測試傳回尚未收集的回應,您會收到類似下列回應的通知:

Expected one of: "Got it, turning on 2 lights."

使用 Google 助理模擬器執行語句

這種情況表示測試失敗。否則,Assistant Simulator 會執行每項查詢並傳回回覆。如果測試成功,狀態列會顯示 勾號。

使用 Google 助理模擬器執行語句

查看 Cloud Logging

如要在 Cloud Logs 工具視窗中開啟專案分頁,請按一下Google Home Plugin面板中的「Cloud Logs」。您可以為每項專案開啟獨立的 Cloud Logging 分頁。

Cloud Logging 分頁

查詢字詞

您也可以使用「Query」(查詢) 欄位篩選所選專案的記錄。舉例來說,如要篩選關鍵字為 light 的記錄,請按照下列步驟操作:

Cloud Logging 查詢

選取「Use QL」(使用 QL),即可使用 Logging 查詢語言。

Cloud Logging 查詢語言

以下列舉幾個 QL 查詢範例,協助您快速上手:

severity = (DEBUG OR INFO OR NOTICE OR WARNING OR ERROR OR CRITICAL OR ALERT OR EMERGENCY) AND resource.type="assistant_action_project" AND timestamp > "2022-04-07T00:40:18Z"
jsonPayload.executionLog.executionResults.actionResults.action.trait = "TRAIT_ON_OFF"
jsonPayload.executionLog.executionResults.actionResults.action.actionType = "ONOFF_ON"

日期和時間查詢

您也可以選擇依日期查詢記錄,只要按一下「After」(之後) 和「Before」(之前) 即可啟用。您可以在提供的文字欄位中輸入日期和時間格式,例如 5/11/22, 12:37 PM,也可以使用日期挑選器 選取日期,然後在文字欄位中輸入時間。

  • 如要選取 5/1/22 之後的日期,請選取「晚於」,然後按一下日期圖示 。
  • 如要選取 5/1/22 之前的日期,請選取「Before」(之前),然後按一下日期圖示 。
  • 如要選取介於 5/1/22和 6/30/22之間的日期,請選取「早於」和「晚於」,然後從日期圖示 選擇日期。

選取「即時」,即可擷取即時專案記錄。按一下「Stop」(停止),即可結束即時動態饋給。

嚴重性等級

您也可以從下拉式選單中選取「最低嚴重性」。

查詢結果

按一下「 Fetch」,提交查詢參數。

載入記錄後,按一下任一記錄 ,即可展開完整的 JSON 酬載。再次按一下 即可顯示完整訊息。

您也可以在「Filter」(篩選器) 方塊中輸入關鍵字,縮小記錄結果範圍。按一下 x 即可移除篩選器,並返回原始擷取結果。

查看 Cloud Logging

查看 Home Graph 並執行測試

如要列出裝置,請從 Google Home Plugin 面板中選取「Home Graph」。

按一下 「Refresh」(重新整理),即可顯示與所選專案相關聯裝置的「Device name」(裝置名稱)、「Device id」(裝置 ID) 和「Device type」(裝置類型)。您可以為不同專案開啟多個 Google Home Graph 面板。

載入裝置後,按一下任一記錄 ,即可展開完整的 JSON 酬載。

Home Graph JSON 酬載

您也可以使用「Expand」(展開) 和「Collapse」(收合) 顯示及隱藏裝置的 JSON 酬載。

Home Graph 展開及收合 JSON

如要啟動特定裝置的測試套件,請按一下「Test」(測試)。系統會在瀏覽器中啟動測試套件,並選取裝置,準備進行測試。按一下「Start」(開始),然後等待測試結果。

Home Graph 執行測試

測試完成後,您可以查看測試詳細資料和記錄。

Home Graph 完成的測試

Android Debug Bridge (adb) 記錄檢視器

如要在 Adb Log 工具視窗中開啟專案分頁,請按一下 Google Home 外掛程式工具列 (左側) 中的「Adb Log」指令。您可以為每個記錄檔開啟個別的 Adb 記錄分頁。如要刪除分頁,請按一下 圖示。

使用「Select」(選取) 欄位選取要查看的特定記錄元件,並使用「Severity」(嚴重性) 下拉式選單,只顯示記錄嚴重性相符的項目。

針對所選 ADB 記錄,您可以使用「篩選」欄位篩選記錄項目,並視需要使用「區分大小寫」或「規則運算式」修飾符。

此外,您還可以:

  • 使用「Find」欄位和「Find Next」 ( 圖示) 和「Find Previous」 ( 圖示) 指令,尋找特定項目。
  • 使用選用的「區分大小寫」或「規則運算式」修飾符。
  • 跳至行:跳至記錄中的指定行 (依編號)。

選取「編號」,即可查看已新增行號的記錄行。選取「Raw」即可查看原始記錄項目。

ADB 記錄檢視器

資源與意見回饋

按一下「資源」,查看開發人員工具和資源清單。

如要提交想法或意見,協助我們改善 Google Home Plugin 的開發體驗,請按一下「Feedback」(意見回饋)。

提供意見