Android 上的自動化 API 特徵支援

Android 適用的 Automation API 支援大多數特質,但對特質中的某些屬性、事件和指令,支援可能有限。

一般而言:

  • 如要在應用程式中搭配使用 Automation API,必須在初始化時註冊所有特徵和類型。請參閱「建立主住宅執行個體」。
  • 任何屬性都可用於啟動條件或限制條件。
  • Cloud-to-cloud 部裝置不會回報狀態,因此無法做為自動化動作的觸發條件 (無論是手動建立或透過探索建立)。
  • 即使裝置支援此處列出的特徵,也可能因回報狀態品質門檻,而無法在 Automation API 中做為啟動條件或動作:

    • 如果裝置的 Report State 成功率低於 90%,就無法做為啟動條件。
    • 如果裝置的指令執行成功率低於 95%,就無法做為動作使用。

    請參閱裝置型號清單,以及 Automations API 支援的特定啟動條件和動作。

  • 指令只能做為動作使用。

  • 部分特徵 (例如 AssistantBroadcast 和 Notification) 只能在 Automation API 中使用。

  • okGoogle 指令是結構層級指令,可用於自動化結構中的任何裝置。不過,Home API 應用程式不一定能存取所有裝置。請參閱「OkGoogle 權限」,瞭解各種情況下如何強制執行權限。

  • 部分特質有先決條件:

    • 如要使用時間啟動條件,例如 Time.ScheduledTimeEvent、Time.RecurringClockTimeScheduledEvent 或 Time.RecurringSolarTimeScheduledEvent,執行自動化動作的住家結構體必須有街道地址,才能判斷當地時區和日照計算。您可以在建立住家結構體時提供地址,或在 Google Home app (GHA) 中設定。變更 Google 住家地址說明使用者如何在 GHA 中輸入或更新住家結構體地址。如果未設定地址,createAutomation() 會儲存並傳回 isValid == false 的 Automation,並顯示包含 MissingStructureAddressSetup 的 UnsupportedEntityEvent 驗證問題。
    • 如要讓住家成員接收Notification.sendNotifications的通知,他們必須安裝GHA並啟用通知功能。系統會透過 GHA 將通知傳送給成員,無法直接傳送至第三方應用程式。
    • 如要使用 AreaPresenceState 或 AreaAttendanceState 特性,使用者必須在 GHA 中設定在宅感應功能。
    • 使用者必須具備有效的 Google Home Premium 訂閱方案,才能使用 ObjectDetection 特性。

部分特性的簡化版本也可用於自動化動作。 詳情請參閱「Android 上的簡化特徵」。