提供工作階段的強大 API。
通訊協定
BlockingListener
定義於 fuchsia.session.power/power.fidl
由選擇接收的元件實作的介面 並啟動工作階段 封鎖相關電源操作,直到元件回應。
關閉「BlockingListener
」的伺服器端點之後,
將封鎖事件監聽器從登錄檔中移除,並解除封鎖
相關功率作業
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
上重新啟動。
拍攝
租賃。
要求
<空白>
回應
名稱 | 類型 |
---|---|
payload |
Handoff_Take_Result
|
ListenerRegistry
定義於 fuchsia.session.power/power.fidl
允許應用程式在電源狀態變更時要求回呼。
BlockingListener
致謝的時間會影響
暫停和繼續程序,因為 ListenerRegistry
必須
等待 BlockingListener
回應。
但請注意,ListenerRegistry
可能會套用逾時
回應。
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>
|
出租電源元件。 這是秘密的 TODO(https://fxbug.dev/339474151):這也可能成為 與遷移租賃控制管道事件搭配使用的事件配對 事件配對。 |
無預設 |
ListenerRegistry_RegisterBlockingListener_Response
定義於 fuchsia.session.power/power.fidl
<空白>
ENUMS
HandoffError 彈性
類型:uint32
定義於 fuchsia.session.power/power.fidl
取得電源租約時發生錯誤。
名稱 | 值 | 說明 |
---|---|---|
ALREADY_TAKEN |
1 |
租約已有人使用。 |
無法使用 |
2 |
由於錯誤或設定,因此無法使用釋出期。 |
聯合國
BlockingListener_OnResumeStarted_Result 嚴格
定義於 fuchsia.session.power/power.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
BlockingListener_OnResumeStarted_Response
|
|
3 |
framework_err |
internal
|
BlockingListener_OnSuspendFailed_Result 嚴格
定義於 fuchsia.session.power/power.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
BlockingListener_OnSuspendFailed_Response
|
|
3 |
framework_err |
internal
|
Handoff_Take_Result 的嚴格 資源
定義於 fuchsia.session.power/power.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Handoff_Take_Response
|
|
2 |
err |
HandoffError
|
|
3 |
framework_err |
internal
|
ListenerRegistry_RegisterBlockingListener_Result 嚴格
定義於 fuchsia.session.power/power.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
ListenerRegistry_RegisterBlockingListener_Response
|
|
3 |
framework_err |
internal
|