從 Android 14 開始,Android 動態效能架構 (ADPF) 中新增了名為 GAME
的電源模式,可讓使用者在玩遊戲時自訂手機效能。GAME
會向 Power HAL 指出遊戲應用程式位於前景。這項指標可讓 Power HAL 在遊戲進行時採用電源管理策略,確保使用者享有穩定且更優異的效能。
為改善遊戲載入時間,Android 13 在 ADPF 中導入名為 GAME_LOADING
的全新電源模式。GAME_LOADING
表示遊戲應用程式是否處於載入狀態,以便 Power HAL 提供載入加速功能。這項指標可讓 Power HAL 提供效能提升措施,加快遊戲載入速度。
本頁面說明遊戲應用程式如何將遊戲狀態傳遞至 Power HAL,以及如何設定 Power HAL,以便在裝置中善用這項功能,並測試 Power HAL 實作項目。
偵測電源模式並發送通知
本節說明 Power Manager 如何處理 GAME
和 GAME_LOADING
模式。
遊戲電源模式
Android 14 的新電源模式 GAME
會向電源管理服務指出使用者正在玩遊戲。當 Power HAL 收到模式通知時,可以調整電源來提升效能、降低溫度及延長電池續航力,同時執行遊戲。GAME
下圖說明資訊流向 Power HAL 的方式,以指出 GAME
電源模式:
圖 1. 資訊流程,表示正在玩遊戲。
系統一律會為具有 appCategory
的應用程式設定 GAME
電源模式,並將 GAME
放在 AndroidManifest.xml
中。
GAME_LOADING 電源模式
載入加速模式會偵測遊戲應用程式何時處於載入狀態,並通知 Power HAL。Android 13 在開發人員專用 API 中導入名為 isLoading
的新遊戲狀態。這個遊戲狀態會使用 Power Manager Service 中的新 GAME_LOADING
電源模式,將頂層遊戲狀態通知 Power HAL。Power HAL 收到遊戲載入狀態通知後,即可調整平台的效能設定和 CPU 時脈速率,進而縮短載入時間。
如要指出遊戲正在載入,遊戲應用程式會使用遊戲資訊主頁,在遊戲管理工具中設定 isLoading
狀態。Game Manager 會將這個狀態傳遞至 Game Manager Service,後者會使用 setPowerMode
搭配新的 GAME_LOADING
電源模式,叫用 Power Manager Service。GAME_LOADING
電源模式
會向電源 HAL 指出遊戲處於載入狀態,以便電源 HAL 提供載入加速。
下圖說明資訊從應用程式流向 Power HAL 的流程,以指出載入狀態:
圖 2. 資訊流程,指出遊戲處於載入狀態。
使用者可以在遊戲資訊主頁的「效能設定」中,開啟或關閉載入加速功能。「效能設定」預設為關閉。
使用 GAME 和 GAME_LOADING 自訂 Power HAL
如要使用 GAME
和 GAME_LOADING
模式,原始設備製造商必須自訂 Power HAL 的實作方式。由於電源管理和效能提升功能與硬體相關,因此在 Google Pixel 裝置的參考實作版本發布前,不會提供 GAME
或 GAME_LOADING
模式的參考實作版本。
如要提升 GAME
和 GAME_LOADING
模式的效能,原始設備製造商可以選擇實作下列措施的組合:
- 穩定影格速率
- 提高 CPU 時脈速度
- 暫時減少溫度節流
- 為前景遊戲應用程式指派較高的 CPU 優先順序
- 減少為一般非遊戲應用程式調整的 CPU 提升
- 最佳化與熱相關的電力分配策略
測試 GAME 模式實作
如要測試 GAME
模式的實作,請在 GameManagerServiceTests.java
中使用以 testGamePowerMode_
為前置字元的測試。
測試 GAME_LOADING 實作
如要測試 GAME_LOADING
模式的導入情況,請使用 android.gamemanager.cts.GameManagerTest#testSetGameContext
。這項測試會驗證 GameManager::setGameContext()
是否透過 isLoading
內容,在效能模式下叫用 Power HAL 的遊戲載入模式。