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 mengadopsi strategi pengelolaan daya saat game dimainkan, sehingga pengguna mendapatkan performa yang stabil dan ditingkatkan.
Untuk meningkatkan waktu pemuatan game, Android
13 memperkenalkan mode daya baru bernama GAME_LOADING
di 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 agar dapat memanfaatkannya di perangkat Anda, serta cara menguji penerapan Power HAL.
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 ke
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 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 berada dalam status pemuatan dan memberi tahu Power HAL. Android 13
memperkenalkan status game baru yang disebut isLoading di API yang berinteraksi dengan developer.
Status game ini menggunakan mode daya GAME_LOADING
baru di Layanan Pengelola Daya untuk memberi tahu Power HAL tentang status game tingkat
atas. 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 ke 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 berada 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 penerapan Power HAL.
Karena pengelolaan daya dan peningkatan performa bersifat khusus hardware, tidak ada penerapan referensi
untuk mode GAME atau GAME_LOADING yang tersedia hingga
penerapan referensi untuk perangkat Google Pixel dirilis.
Untuk meningkatkan performa dalam mode GAME dan GAME_LOADING, OEM dapat memilih untuk
menerapkan kombinasi langkah-langkah berikut:
- Menstabilkan kecepatan frame
- Meningkatkan kecepatan clock CPU
- Mengurangi pembatasan suhu untuk sementara
- Menetapkan prioritas CPU yang lebih tinggi ke aplikasi game latar depan
- Mengurangi peningkatan CPU yang disesuaikan untuk aplikasi non-game reguler
- 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 penerapan 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.