Dengan API Mode Game, Anda dapat mengoptimalkan game untuk mendapatkan performa terbaik atau masa pakai baterai terpanjang jika pengguna memilih mode game yang sesuai.
Atau, Anda dapat mengirimkan permintaan untuk Intervensi Mode Game guna meningkatkan performa game yang tidak lagi diupdate oleh developer.
Game Mode API dan intervensi tersedia di:
- Pilih perangkat Android 12
- Perangkat yang menjalankan Android 13 atau yang lebih baru
Setiap game dapat menerapkan perilaku Game Mode API, mengusulkan setelan intervensi Mode Game kepada OEM, atau memilih tidak ikut intervensi Mode Game.
Penyiapan
Untuk menggunakan API Mode Game di game Anda, lakukan hal berikut:
Download dan instal Android 13 SDK.
Dalam file
AndroidManifest.xml
, deklarasikan aplikasi Anda sebagai game dengan menetapkan atributappCategory
di elemen<application>
:
android:appCategory="game"
- Buat kueri mode game saat ini dengan menambahkannya ke aktivitas utama Anda:
Java
// Only call this for Android 12 and higher devices
if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ) {
// Get GameManager from SystemService
GameManager gameManager = Context.getSystemService(GameManager.class);
// Returns the selected GameMode
int gameMode = gameManager.getGameMode();
}
Kotlin
// Only call this for Android 12 and higher devices
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
// Get GameManager from SystemService
val gameManager: GameManager? = context.getSystemService(Context.GAME_SERVICE) as GameManager?
// Returns the selected GameMode
val gameMode = gameManager?.gameMode
}
Mode game yang didukung | Deskripsi |
---|---|
TIDAK DIDUKUNG | Game tidak mendeklarasikan dukungan untuk API Mode Game dan tidak mendukung intervensi Mode Game. |
STANDAR | Pengguna belum memilih mode game atau pengguna memilih mode standar. |
PERFORMA | Memberikan kecepatan frame latensi terendah karena fidelitas dan masa pakai baterai berkurang. |
BATERAI | Memberikan masa pakai baterai terlama karena kecepatan frame dan fidelitas berkurang. |
Tambahkan kode untuk mengkueri status mode game dalam fungsi
onResume
:
Praktik Terbaik
Jika game Anda sudah mendukung beberapa target fidelitas dan kecepatan frame, Anda harus mengidentifikasi setelan yang sesuai untuk mode performa dan penghemat baterai:
Untuk mencapai kecepatan frame perangkat maksimum secara konsisten, pertimbangkan adanya sedikit pengurangan dalam fidelitas untuk mencapai kecepatan frame yang lebih tinggi.
Untuk meningkatkan masa pakai baterai: sebaiknya pilih kecepatan refresh layar yang lebih rendah (misalnya, 30 Hz atau 60 Hz) dan gunakan kecepatan frame untuk menargetkan frekuensi yang lebih rendah.
Untuk game tipe high-fidelity, seperti tembak-menembak orang pertama, arena pertarungan online multiplayer (MOBA), dan game RPG, Anda harus berfokus mencapai kecepatan frame yang tinggi untuk memaksimalkan pengalaman pengguna.
Untuk game tipe high-fidelity dan sederhana, Anda harus mendukung mode penghemat baterai untuk memperpanjang waktu bermain dengan mengurangi kecepatan frame puncak.
Mendeklarasikan dukungan untuk Mode Game
Guna mendeklarasikan dukungan untuk Mode Game dan mengganti intervensi Mode Game oleh
OEM, pertama-tama tambahkan konfigurasi Mode Game ke
elemen <application>
dalam
file AndroidManifest.xml
Anda:
<application>
<meta-data android:name="android.game_mode_config"
android:resource="@xml/game_mode_config" />
...
</application>
Kemudian, buat file game_mode_config.xml
di direktori res/xml/
project Anda dengan konten berikut:
<?xml version="1.0" encoding="UTF-8"?>
<game-mode-config
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsBatteryGameMode="true"
android:supportsPerformanceGameMode="true"
/>
Beralih Mode Game
Untuk beralih antar-mode game, Anda dapat menggunakan Dasbor Game (tersedia di perangkat Pixel) atau aplikasi serupa yang disediakan oleh OEM. Atau, Anda dapat menggunakan perintah shell Game Mode selama pengembangan.
Jika menggunakan Dasbor Game dan ikon pengoptimalan tidak ditampilkan saat game diluncurkan, Anda mungkin perlu mengupload aplikasi ke Konsol Google Play dan menginstalnya melalui Play Store. Untuk mengetahui informasi tentang pengujian aplikasi di Play Store, lihat Berbagi app bundle dan APK secara internal.
Gambar 1. Dasbor Game ditampilkan sebagai overlay game yang sedang berjalan di perangkat Pixel.
Pada Gambar 1, Mode Game game yang sedang berjalan dapat diubah dari widget
Pengoptimalan. Seperti yang ditampilkan di widget, game saat ini berjalan dalam mode
PERFORMANCE
.
Selama pengembangan, jika Anda menggunakan perangkat tanpa Dasbor Game dan produsen tidak menyediakan cara untuk menyetel Mode Game untuk setiap aplikasi, Anda dapat mengubah status Mode Game melalui adb:
adb shell cmd game mode [standard|performance|battery] <PACKAGE_NAME>
Aplikasi Contoh
Contoh Game Mode API menyoroti cara Anda dapat mengoptimalkan FPS dan merender batas resolusi untuk menghemat sekitar 25% daya dalam aplikasi.
Berikutnya
Baca Intervensi Mode Game untuk meningkatkan performa game saat update game tidak dapat diberikan.