Android 適用的 Automation API 支援大多數特徵,但特徵中的部分屬性、事件和指令可能僅支援有限功能。
一般而言:
- 如要在應用程式中使用 Automation API,必須在初始化時註冊所有特徵和型別。請參閱「建立 Home 執行個體」。
- 啟動條件或限制條件可使用任何屬性。
- 無法將未回報狀態的 Cloud-to-cloud 裝置做為自動化動作的觸發條件,無論是手動建立或透過探索功能建立的自動化動作皆不適用。
即使裝置支援此處列出的特徵,但如果回報狀態品質未達門檻,裝置可能無法在 Automation API 中做為啟動條件或動作:
- 如果裝置的「回報狀態」成功率低於 90%,就無法做為啟動器。
- 如果裝置的指令執行成功率低於 95%,就無法用來執行動作。
請參閱這份裝置型號清單,瞭解這些裝置支援的特定啟動條件和動作,以便搭配 Automations API 使用。
指令只能做為動作使用。
部分特徵 (例如
AssistantBroadcast和Notification) 只能在 Automation API 中使用。okGoogle指令是結構層級的指令,可用於自動控制結構中的任何裝置。不過,Home API 應用程式可能無法存取所有裝置。請參閱「Ok Google 權限」,瞭解在各種情況下如何強制執行權限。部分特徵有先決條件:
- 如要使用以時間為準的啟動條件,例如
Time.ScheduledTimeEvent、Time.RecurringClockTimeScheduledEvent或Time.RecurringSolarTimeScheduledEvent,自動化動作執行的建築物必須有街道地址,才能判斷當地時區和太陽能計算結果。您可以在建立結構時提供地址,或在 Google Home app (GHA) 中設定地址。變更 Google 居家地址一文說明使用者如何在 GHA 中輸入或更新住家地址。如果未設定地址,createAutomation()會儲存並傳回Automation,其中isValid == false包含UnsupportedEntityEvent驗證問題,內含MissingStructureAddressSetup。 - 住家成員必須安裝 GHA 並啟用通知,才能接收
Notification.sendNotifications通知。通知會透過 GHA 傳送給成員,無法直接傳送給第三方應用程式。 - 如要使用
AreaPresenceState或AreaAttendanceState特徵,使用者必須在 GHA 中設定在宅感應功能。 - 如要使用
ObjectDetection特徵,使用者必須具備有效的 Google Home Premium 訂閱方案。
- 如要使用以時間為準的啟動條件,例如
您也可以在自動化作業中使用部分特徵的簡化版本。 詳情請參閱「Android 簡化特徵」。