Google Play Game mengharuskan Anda menambahkan kompatibilitas PC dan pengoptimalan PC ke game Anda. Selain perubahan ini, Anda juga perlu memperbarui konfigurasi grafis game untuk memastikan kompatibilitas PC.
Lihat Persyaratan PC minimum bagi pengguna untuk menginstal platform serta menyiapkan mesin pengembangan Anda.
Menyertakan arsitektur ABI x86
Semua library yang disertakan dalam game Anda memerlukan versi yang kompatibel dengan ABI x86 untuk memastikan performa dan stabilitas terbaik di platform. Google Play Game mendukung versi 32 bit dan 64 bit, tetapi Anda hanya perlu memilih salah satu untuk memenuhi persyaratan.
Kompilasi library
Untuk memastikan kompatibilitas prosesor x86 terbaik, jangan gunakan kumpulan petunjuk
atom saat mengompilasi library Anda. Misalnya, saat menggunakan gcc
,
hindari penggunaan -march=atom
dan gunakan -march=x86
atau
-march=x86-64
.
Arsitektur target di Unity
Jika game Anda menggunakan game engine Unity, Anda harus mengaktifkan target Android x86 32-bit. Untuk melakukannya, lakukan hal berikut di Unity:
Buka Player Settings > Other Settings > Configuration > Scripting Backend dan pilih IL2CPP dari menu dropdown untuk mengaktifkan Backend Pembuatan Skrip IL2CPP.
Aktifkan target Android x86 32-bit untuk versi Unity Anda:
Unity 2018 dan versi sebelumnya: buka Player Settings > Other Settings > Target Architecture, lalu pilih kotak centang x86.
Rilis Dukungan Jangka Panjang Unity 2019 (LTS) dan yang lebih baru: buka Player Settings > Other Settings > Target Architectures lalu aktifkan x86 Chrome OS) dan x86-64 (Chrome OS).
Untuk memaksimalkan dukungan game engine, sebaiknya aktifkan dukungan x86 dan x86-64, atau hanya x86-64 agar Anda tidak dibatasi oleh ruang memori 32 bit.
Mendeteksi Google Play Game
Anda dapat mendeteksi platform Google Play Game saat runtime sehingga Anda dapat mengaktifkan atau menonaktifkan fitur khusus platform dalam game.
Periksa fitur sistem com.google.android.play.feature.HPE_EXPERIENCE
untuk
menentukan apakah game Anda berjalan di platform Google Play Game:
Kotlin
var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
Java
PackageManager pm = getPackageManager(); boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
C#
var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity"); var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager"); var isPC = packageManager.Call<bool>("hasSystemFeature", "com.google.android.play.feature.HPE_EXPERIENCE");
Menangani Peristiwa siklus proses Android
Penting untuk menangani peristiwa
onPause
(c++)
di lingkungan Google Play Game. Game Anda akan terlihat
saat pemain mengaktifkan overlay emulator, dan kegagalan pemrosesan peristiwa
onPause
dapat menyebabkan pengalaman pengguna yang buruk.
Memperbarui UI untuk kompatibilitas PC
Elemen dan gestur UI tertentu tidak cocok di PC dan harus diperbarui.
Wajib diisi:
- Mengganti tindakan UI yang memerlukan dua jari atau lebih (misalnya: "Cubit untuk Zoom")
Direkomendasikan:
- Semua teks yang terlihat oleh pengguna harus bertuliskan "klik", bukan "ketuk".
- Daftar yang dapat di-scroll harus memiliki scrollbar.
- Area yang dapat digeser harus memiliki scrollbar atau beberapa cara lain untuk melintasi jarak yang jauh dengan cepat.
- Jangan menampilkan keyboard yang dapat diklik untuk entri teks.
Semua entri teks harus berada dalam batas kolom teks.
Klik pada elemen yang terlihat harus:
- Menerima klik anywhere dalam batas elemen yang terlihat.
- Tidak menerima klik pada area di luar elemen yang terlihat.
Dialog harus memiliki tombol tutup yang terlihat. Jangan mendeteksi klik di luar batas dialog.
Menonaktifkan dialog izin
Google Play Game tidak menampilkan dialog izin, jadi sebaiknya jangan mencoba menampilkannya sebelum meminta izin. Jika Anda menampilkan dialog izin sebelumnya, Anda harus mengupdate aplikasi agar tidak lagi menampilkannya di PC.
Fitur dan izin Android yang tidak didukung
Di PC, fitur Android tertentu yang tersedia di ponsel atau tablet tidak dapat diakses. Ini mencakup fitur hardware seperti kamera dan fitur lainnya seperti lokasi pengguna. Akibatnya, game Anda tidak boleh bergantung pada fitur atau izin Android yang tidak didukung. Di PC, jika game meminta akses ke izin yang tidak didukung, permintaan tersebut otomatis akan gagal.
Agar game kompatibel dengan PC, Anda harus membuat perubahan berikut:
- Di manifes aplikasi, tambahkan
android:required="false"
ke deklarasi<uses-feature>
untuk semua fitur yang tidak didukung Google Play Game. Ini hanya berlaku untuk fitur yang telah dideklarasikan di manifes aplikasi Anda. - Nonaktifkan fitur dari game yang bergantung pada fitur hardware dan software yang tidak didukung di PC. Jika menggunakan APK yang sama seperti game seluler, Anda dapat menonaktifkannya secara kondisional untuk PC.
- Nonaktifkan permintaan untuk izin Android yang tidak didukung dari game Anda, dan fitur yang bergantung pada izin ini. Jika menggunakan APK yang sama seperti game seluler, Anda dapat membuat perubahan untuk PC ini secara kondisional, dan tidak boleh membuat perubahan apa pun pada izin yang dideklarasikan di manifes.
Untuk informasi selengkapnya tentang kompatibilitas manifes aplikasi, lihat panduan kami tentang Kompatibilitas manifes aplikasi Chromebook.
Hapus fitur hardware ini sebelum mengirimkan build pengujian pertama ke Konsol Google Play:
android.hardware.wifi
android.hardware.bluetooth
android.hardware.camera
android.hardware.location
android.hardware.microphone
Untuk informasi lebih lanjut cara menghapus fitur android.hardware.wifi
, lihat
Memantau status konektivitas dan pengukuran koneksi.
Untuk mengetahui daftar lengkap fitur yang tidak didukung, lihat
panduan kompatibilitas manifes aplikasi.
Fitur hardware yang biasa digunakan ini tidak kompatibel dengan PC sehingga Anda harus menghapusnya sebelum pengiriman akhir ke Konsol Google Play:
android.hardware.audio.pro
android.hardware.bluetooth
android.hardware.camera
android.hardware.consumerir
android.hardware.location
android.hardware.microphone
android.hardware.nfc
android.hardware.sensor.light
android.hardware.sensor.accelerometer
android.hardware.sensor.barometer
android.hardware.sensor.compass
android.hardware.sensor.gyroscope
android.hardware.sensor.proximity
android.hardware.telephony
android.hardware.touchscreen
android.hardware.usb.accessory
android.hardware.usb.host
android.hardware.wifi
android.software.midi
Izin yang biasa digunakan berikut tidak didukung di PC:
android.permission.FOREGROUND_SERVICE
android.permission.INSTALL_PACKAGES
android.permission.READ_PHONE_STATE
android.permission.USE_CREDENTIALS
android.permission.CAMERA
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_COARSE_LOCATION
android.permission.WRITE_SETTINGS
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SYSTEM_ALERT_WINDOW
android.permission.READ_CONTACTS
com.google.android.gms.permission.ACTIVITY_RECOGNITION
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.GET_ACCOUNTS
android.permission.RECORD_AUDIO
Situs dan WebView eksternal
Intent browser memuat pada browser web native di PC, bukan yang ada di lingkungan Google Play Game. Hal ini dapat memberikan pengalaman ideal bagi pemain dalam kebanyakan situasi.
Untuk memudahkan porting, Google Play Game mendukung
WebView. Karena
dibuka di lingkungan Google Play Game, pengalaman pengguna browser desktop
biasanya tidak akan tersedia. Jika sebelumnya Anda menggunakan WebView
untuk
berbagi Persyaratan Layanan, Kebijakan Privasi, atau konten serupa lainnya, sebaiknya Anda
memanggil intent browser.
Menonaktifkan API Layanan Google Play yang tidak didukung
Google Play Game mengirim varian Layanan Google Play-nya sendiri yang hanya berisi subset API Layanan Google Play. Anda perlu mengonfirmasi bahwa aplikasi Anda tidak terlalu bergantung pada modul yang dihilangkan atau tidak didukung di PC. Pertimbangkan bahwa beberapa modul mungkin tersedia, tetapi fungsinya tidak selalu didukung. Misalnya, Firebase Cloud Messaging tidak akan berfungsi saat Google Play Game ditutup.
Modul yang Didukung
Modul-modul berikut saat ini tersedia dan akan didukung oleh Google Play Game di masa mendatang.
- Login dengan Google (tidak termasuk transfer akun, SmartLock, Verifikasi SMS, Penghitungan kompleksitas sandi)
- Cronet
- Layanan game Google Play
- Tasks
- Visual
- Google Pay
Dukungan Terbatas
Modul berikut ini berfungsi sebagian. Kami akan melakukan upaya terbaik untuk mendukung modul-modul tersebut di Google Play Game, tetapi kami tidak dapat menjamin fungsinya.
- Google AdMob (Iklan seluler, ID Iklan)
- Google Cloud Messaging (Tidak digunakan lagi, gunakan Firebase Cloud Messaging)
- Firebase Authentication (Autentikasi nomor telepon tidak berfungsi)
- Firebase Cloud Messaging
- Firebase Common Libraries
- Firebase ML
- Firebase Remote Config
- Firebase Analytics
Tidak Didukung
Modul ini tidak didukung di Google Play Game, tetapi tidak menyebabkan masalah di Google Play Game jika gagal:
- Google Analytics (Tidak digunakan lagi, gunakan Firebase Analytics)
- Google Cast
- Awareness API
- Drive (Tidak digunakan lagi, akan segera dihapus)
- FIDO
- Firebase Realtime Database
- Firestore
- Pengujian A/B Firebase
- Google Fit
- Address API
- Instant Apps API
- Location API
- Google Maps SDK
- Berbagi Langsung
- Panorama
- Tempat
- Google+
- SafetyNet (Tidak digunakan lagi), lengkapi formulir minat untuk ikut serta dalam Play Integrity API mendatang)
- Google Tag Manager
- Wear OS
Rusak
Anda tidak boleh menggunakan modul ini karena dapat menyebabkan perilaku yang tidak diharapkan di Google Play Game.
Mengaktifkan penyimpanan terbatas
Bagian ini berlaku jika game Anda membaca/menulis ke penyimpanan eksternal. Penerapan penyimpanan terbatas diperlukan sebagai cara alternatif untuk membaca dan menulis ke penyimpanan. Dengan melakukan hal ini, Anda tidak perlu meminta izin sensitif berikut kepada pemain:
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
Untuk informasi selengkapnya tentang penyimpanan terbatas, lihat:
Menonaktifkan iklan seluler di game versi PC
Guna mengoptimalkan game untuk PC, Anda harus menonaktifkan iklan seluler di versi PC, karena iklan tersebut tidak kompatibel dengan PC desktop dan laptop. Ini mencakup semua unit iklan yang disediakan oleh SDK iklan seluler. Anda tidak wajib membuat perubahan pada iklan di versi seluler game Anda. Sebaiknya gunakan tombol fitur untuk membatasi perubahan hanya pada versi PC game Anda. Anda tetap dapat mempertahankan iklan seluler di Chrome OS.
Anda harus melakukan langkah-langkah berikut saat menghapus iklan seluler:
- Nonaktifkan semua unit iklan seluler, termasuk banner, interstisial, dan iklan reward.
- Nonaktifkan fitur game yang bergantung pada iklan reward. Misalnya, fitur yang memungkinkan pengguna menonton iklan video untuk memperoleh mata uang dalam game dapat menonaktifkan atau menghapus tombol sepenuhnya.
Analytics
Produk Google Analytics lama tidak berfungsi di Google Play Game. Jika ini terjadi, Anda harus bermigrasi ke Google Analytics 4.
Ini hanya akan berpengaruh jika saat ini Anda menggunakan Google Analytics 360. Jika menggunakan Firebase SDK untuk melacak peristiwa analisis dalam game dan dapat melihat game Anda sebagai properti di Konsol Google Analytics, Anda tidak perlu mengambil tindakan lebih lanjut.