Mulai Android 14, mode daya baru bernama GAME
di Android Dynamic Performance Framework (ADPF) memungkinkan penyesuaian
performa ponsel selama penggunaan game. GAME
menunjukkan ke Power HAL bahwa
aplikasi game berada di latar depan. Indikasi ini memungkinkan Power HAL
menggunakan strategi pengelolaan daya saat game sedang dimainkan, sehingga pengguna
mengalami performa yang stabil dan lebih baik.
Untuk meningkatkan waktu pemuatan game, Android
13 memperkenalkan mode daya baru bernama GAME_LOADING
dalam ADPF. GAME_LOADING
menunjukkan apakah aplikasi game berada dalam status pemuatan sehingga
Power HAL dapat memberikan peningkatan pemuatan. Indikasi ini memungkinkan Power HAL
memberikan langkah-langkah peningkatan performa 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 penerapan Power HAL Anda.
Deteksi dan notifikasi mode daya
Bagian ini menjelaskan cara Pengelola Daya menangani mode GAME
dan GAME_LOADING
.
Mode daya GAME
Mode daya baru GAME
di Android 14 menunjukkan kepada
Layanan Pengelola Daya
bahwa pengguna sedang bermain game. Saat diberi tahu tentang mode GAME
, Power HAL
dapat menyesuaikan daya untuk meningkatkan performa, menurunkan suhu, dan memperpanjang
masa pakai baterai, saat game sedang dimainkan.
Gambar berikut menjelaskan alur informasi ke Power HAL untuk
menunjukkan mode daya GAME
:
Gambar 1. Alur informasi untuk menunjukkan bahwa game sedang dimainkan.
Mode daya GAME
selalu ditetapkan untuk aplikasi dengan appCategory
GAME
di AndroidManifest.xml
.
Mode daya GAME_LOADING
Mode peningkatan pemuatan berfungsi dengan mendeteksi saat aplikasi game dalam status
pemuatan dan memberi tahu Power HAL. Android 13
memperkenalkan status game baru yang disebut isLoading
di API yang ditampilkan kepada developer.
Status game ini menggunakan mode daya GAME_LOADING
baru di Layanan Pengelola Daya untuk memberi tahu Power HAL tentang status
game tingkat teratas. Setelah diberi tahu tentang status pemuatan game, Power HAL
dapat menyesuaikan setelan performa platform dan kecepatan clock CPU, yang menghasilkan
waktu pemuatan yang lebih baik.
Untuk menunjukkan bahwa game sedang dimuat, aplikasi game menggunakan Dasbor Game untuk menetapkan
status
isLoading
di Pengelola Game. Pengelola Game meneruskan status ini ke Layanan
Pengelola Game, yang menggunakan setPowerMode
dengan mode daya GAME_LOADING
baru untuk memanggil Layanan Pengelola Daya. Mode daya GAME_LOADING
menunjukkan kepada Power HAL bahwa game berada dalam
status pemuatan sehingga Power HAL dapat memberikan peningkatan pemuatan.
Gambar berikut menjelaskan alur informasi dari aplikasi ke Power HAL untuk menunjukkan status pemuatan:
Gambar 2. Alur informasi untuk menunjukkan bahwa game sedang dalam status pemuatan.
Dasbor game memungkinkan pengguna mengaktifkan atau menonaktifkan fitur peningkatan pemuatan dengan Setelan Performa. Setelan Performa selalu nonaktif secara default.
Menyesuaikan Power HAL menggunakan GAME dan GAME_LOADING
Untuk memanfaatkan mode GAME
dan GAME_LOADING
, OEM harus
menyesuaikan implementasi Power HAL.
Karena pengelolaan daya dan peningkatan performa bersifat khusus hardware, tidak ada implementasi
referensi untuk mode GAME
atau GAME_LOADING
yang tersedia hingga
implementasi referensi untuk perangkat Google Pixel dirilis.
Untuk meningkatkan performa dalam mode GAME
dan GAME_LOADING
, OEM dapat memilih untuk
menerapkan kombinasi tindakan berikut:
- Stabilkan kecepatan frame
- Meningkatkan kecepatan clock CPU
- Menurunkan throttling suhu untuk sementara
- Menetapkan prioritas CPU yang lebih tinggi ke aplikasi game latar depan
- Mengurangi peningkatan CPU yang disesuaikan untuk aplikasi reguler non-game
- Mengoptimalkan strategi distribusi daya terkait termal
Menguji penerapan mode GAME
Untuk menguji penerapan mode GAME
, gunakan pengujian yang diawali dengan
testGamePowerMode_
di GameManagerServiceTests.java
.
Menguji implementasi GAME_LOADING
Untuk menguji penerapan 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 performa.