fuchsia.session.power

提供工作階段的強大 API。

新增時間:HEAD

通訊協定

BlockingListener

定義於 fuchsia.session.power/power.fidl

由選擇接收的元件實作的介面 並啟動工作階段 封鎖相關電源操作,直到元件回應。

關閉「BlockingListener」的伺服器端點之後, 將封鎖事件監聽器從登錄檔中移除,並解除封鎖 相關功率作業

新增時間:HEAD

OnResumeStarted

ListenerRegistry 呼叫以通知元件 開始恢復正常作業

受訪對象必須盡量縮短 (受訪對象) 回覆的時間, 因為其他電力作業可能會停止運作,直到受呼叫者回覆為止。

呼叫端應將 UNKNOWN_METHOD 回應解讀為 表示受呼叫者沒有任何會封鎖 繼續執行程序。

要求

<空白>

回應

名稱類型
payload BlockingListener_OnResumeStarted_Result

OnSuspendFailed

ListenerRegistry 呼叫以通知元件 導致暫停的嘗試失敗

受訪對象必須盡量縮短 (受訓) 回覆時間, 因為之後可能會遭到封鎖,直到受呼叫者回覆為止。

呼叫端應將 UNKNOWN_METHOD 回應解讀為 表示受訓人員沒有任何工作會妨礙未來 電源狀態變更。

要求

<空白>

回應

名稱類型
payload BlockingListener_OnSuspendFailed_Result

Handoff

定義於 fuchsia.session.power/power.fidl

讓工作階段管理員遞交電源租用到工作階段元件。

舉例來說,session_manager 可能會根據 ApplicationActivity Power 元素,提供 Handoff 功能給 工作階段元件接著,工作階段元件 session_manager。如此一來 會在 ApplicationActivity 上重新啟動。

新增時間:HEAD

拍攝

租賃。

要求

<空白>

回應

名稱類型
payload Handoff_Take_Result

ListenerRegistry

定義於 fuchsia.session.power/power.fidl

允許應用程式在電源狀態變更時要求回呼。

BlockingListener 致謝的時間會影響 暫停和繼續程序,因為 ListenerRegistry 必須 等待 BlockingListener 回應。

但請注意,ListenerRegistry 可能會套用逾時 回應。

新增時間:HEAD

RegisterBlockingListener

向登錄檔註冊 listener

ListenerRegistry 學習電源狀態變更時, ListenerRegistry 會將事件轉送至 listener

詳情請參閱 BlockingListener 方法的說明文件 有哪些可用事件,以及每個回呼的語意。

ListenerRegistry「必須」繼續將活動轉寄到 listener (即使在 ListenerRegistry 連線之後) 已停止。

取代任何先前已註冊的現有 listener

要求

名稱類型
listener BlockingListener

回應

名稱類型
payload ListenerRegistry_RegisterBlockingListener_Result

結構

BlockingListener_OnResumeStarted_Response

定義於 fuchsia.session.power/power.fidl

<空白>

BlockingListener_OnSuspendFailed_Response

定義於 fuchsia.session.power/power.fidl

<空白>

Handoff_Take_Response 資源

定義於 fuchsia.session.power/power.fidl

欄位類型說明預設
lease handle<handle>

出租電源元件。

這是秘密的 fuchsia.power.broker.LeaseControl 管道 但也希望能避免向 ffx 公開這類資訊通訊協定生效後 推出穩定功能 我們可以在這裡替換管道

TODO(https://fxbug.dev/339474151):這也可能成為 與遷移租賃控制管道事件搭配使用的事件配對 事件配對。

無預設

ListenerRegistry_RegisterBlockingListener_Response

定義於 fuchsia.session.power/power.fidl

<空白>

ENUMS

HandoffError 彈性

類型:uint32

定義於 fuchsia.session.power/power.fidl

取得電源租約時發生錯誤。

新增時間:HEAD

名稱說明
1

租約已有人使用。

2

由於錯誤或設定,因此無法使用釋出期。

聯合國

BlockingListener_OnResumeStarted_Result 嚴格

定義於 fuchsia.session.power/power.fidl

序數Variant類型說明
response BlockingListener_OnResumeStarted_Response
framework_err internal

BlockingListener_OnSuspendFailed_Result 嚴格

定義於 fuchsia.session.power/power.fidl

序數Variant類型說明
response BlockingListener_OnSuspendFailed_Response
framework_err internal

Handoff_Take_Result 的嚴格 資源

定義於 fuchsia.session.power/power.fidl

序數Variant類型說明
response Handoff_Take_Response
err HandoffError
framework_err internal

ListenerRegistry_RegisterBlockingListener_Result 嚴格

定義於 fuchsia.session.power/power.fidl

序數Variant類型說明
response ListenerRegistry_RegisterBlockingListener_Response
framework_err internal