Dimulai dengan Android 14, mode daya baru bernama GAME
di Android Dynamic Performance Framework (ADPF) memungkinkan penyesuaian performa ponsel selama penggunaan game. GAME
menunjukkan kepada Power HAL bahwa aplikasi game berada di latar depan. Indikasi ini memungkinkan Power HAL untuk mengadopsi strategi manajemen daya saat permainan sedang dimainkan, sehingga pengguna merasakan kinerja yang stabil dan lebih baik.
Untuk memberikan peningkatan pada waktu pemuatan game, Android 13 memperkenalkan mode daya baru bernama GAME_LOADING
di ADPF. GAME_LOADING
menunjukkan apakah aplikasi game sedang dalam status memuat sehingga Power HAL dapat memberikan peningkatan pemuatan. Indikasi ini memungkinkan Power HAL memberikan langkah peningkatan kinerja yang dapat mempercepat waktu pemuatan game.
Halaman ini menjelaskan cara aplikasi game meneruskan status game ke Power HAL, menjelaskan cara mengonfigurasi Power HAL untuk memanfaatkannya di perangkat Anda, serta cara menguji implementasi Power HAL Anda.
Deteksi dan pemberitahuan mode daya
Bagian ini menjelaskan bagaimana Power Manager menangani mode GAME
dan GAME_LOADING
.
Mode daya PERMAINAN
GAME
mode daya baru di Android 14 menunjukkan ke Layanan Power Manager bahwa pengguna sedang memainkan game. Saat Power HAL diberitahu tentang mode GAME
, ia dapat menyesuaikan daya untuk meningkatkan kinerja, menurunkan suhu, dan memperpanjang masa pakai baterai, saat game sedang dimainkan.
Gambar berikut menjelaskan aliran informasi ke Power HAL untuk menunjukkan mode daya GAME
:
Gambar 1. Aliran informasi untuk menunjukkan bahwa suatu permainan sedang dimainkan.
Mode daya GAME
selalu disetel untuk aplikasi dengan appCategory
GAME
di AndroidManifest.xml
.
GAME_LOADING mode daya
Mode peningkatan pemuatan berfungsi dengan mendeteksi saat aplikasi game berada dalam status memuat dan memberi tahu Power HAL. Android 13 memperkenalkan status permainan baru yang disebut isLoading
di API yang dapat diakses oleh pengembang . Status permainan ini menggunakan mode daya GAME_LOADING
baru di Layanan Power Manager untuk memberi tahu Power HAL tentang status permainan tingkat atas. Setelah Power HAL diberitahu tentang status pemuatan game, Power HAL dapat menyesuaikan pengaturan kinerja platform dan laju jam CPU, yang menghasilkan waktu muat yang lebih baik.
Untuk menunjukkan bahwa game sedang dimuat, aplikasi game menggunakan Dasbor Game untuk mengatur status isLoading
di Game Manager. Game Manager meneruskan status ini ke Layanan Game Manager, yang menggunakan setPowerMode
dengan mode daya GAME_LOADING
baru untuk memanggil Layanan Power Manager. Mode daya GAME_LOADING
menunjukkan kepada Power HAL bahwa game sedang dalam keadaan memuat sehingga Power HAL dapat memberikan peningkatan pemuatan.
Gambar berikut menjelaskan aliran informasi dari aplikasi ke Power HAL untuk menunjukkan status pemuatan:
Gambar 2. Aliran informasi untuk menunjukkan bahwa game sedang dalam status memuat.
Dasbor game memungkinkan pengguna untuk mengaktifkan atau menonaktifkan fitur peningkatan pemuatan dengan Pengaturan Kinerja. Pengaturan Kinerja selalu mati secara default.
Sesuaikan Power HAL menggunakan GAME dan GAME_LOADING
Untuk memanfaatkan mode GAME
dan GAME_LOADING
, OEM harus menyesuaikan implementasi Power HAL mereka. Karena pengelolaan daya dan peningkatan kinerja bersifat khusus perangkat keras, tidak ada implementasi referensi untuk mode GAME
atau GAME_LOADING
yang tersedia hingga implementasi referensi untuk perangkat Google Pixel dirilis.
Untuk meningkatkan kinerja dalam mode GAME
dan GAME_LOADING
, OEM dapat memilih untuk menerapkan kombinasi langkah-langkah berikut:
- Stabilkan kecepatan bingkai
- Meningkatkan kecepatan jam CPU
- Kurangi pelambatan suhu untuk sementara
- Tetapkan prioritas CPU yang lebih tinggi ke aplikasi game latar depan
- Kurangi peningkatan CPU yang disesuaikan untuk aplikasi reguler non-game
- Mengoptimalkan strategi distribusi listrik terkait termal
Uji implementasi mode GAME
Untuk menguji implementasi mode GAME
, gunakan tes yang diawali dengan testGamePowerMode_
di GameManagerServiceTests.java
.
Uji implementasi GAME_LOADING
Untuk menguji implementasi mode GAME_LOADING
, gunakan android.gamemanager.cts.GameManagerTest#testSetGameContext
. Pengujian ini memverifikasi apakah GameManager::setGameContext()
dengan konteks isLoading
memanggil mode pemuatan game di Power HAL dalam mode kinerja.