Google Play Game di PC mengharuskan Anda membuat perubahan kompatibilitas dan pengoptimalan PC untuk game Anda. Perubahan ini memastikan game dapat berjalan di PC dan pengalaman pengguna dioptimalkan untuk platform.
Selain itu, Google Play Game di PC memiliki persyaratan grafik, input perangkat, dan permainan lintas-perangkat. Untuk informasi selengkapnya, lihat Panduan memulai.
Saat membuat perubahan kompatibilitas dan pengoptimalan PC (selain dukungan x86-64), Anda dapat menyiapkan game untuk mendeteksi Google Play Game di PC, lalu menonaktifkan atau mengaktifkan fitur khusus platform. Dengan begitu, Anda dapat menggunakan APK atau App bundle yang sama untuk rilis PC dan seluler Android Anda.
Berikut adalah ringkasan persyaratan dan rekomendasi di halaman ini:
- Menyertakan ABI x86-64 (wajib)
- Mendeteksi Google Play Game saat runtime (direkomendasikan)
- Menangani peristiwa onPause (direkomendasikan)
- Memperbarui elemen UI (wajib)
- Menonaktifkan dialog izin aplikasi Android (wajib)
- Menonaktifkan fitur dan izin Android yang tidak didukung (wajib)
- Mengganti WebView dengan intent browser (direkomendasikan)
- Menonaktifkan API Layanan Google Play yang tidak didukung (wajib)
- Mengaktifkan penyimpanan terbatas (wajib)
- Bermigrasi ke Google Analytics 4 (direkomendasikan)
Menyertakan arsitektur ABI x86-64
Diwajibkan oleh proses rilis
Semua library yang disertakan dalam game Anda memerlukan versi yang kompatibel dengan ABI x86-64 untuk memastikan performa dan stabilitas terbaik di platform.
Jika secara teknis game Anda tidak dapat mengirimkan file x86 64 bit yang dapat dieksekusi, Anda harus menghubungi tim peninjau untuk mendapatkan pengecualian. Game Anda tidak dapat mencapai sertifikasi penuh dengan pengecualian, tetapi dapat ditempatkan ke dalam katalog sebagai game yang "dapat dimainkan".
Kompilasi library
Untuk memastikan kompatibilitas prosesor x86-64 terbaik, jangan gunakan kumpulan petunjuk
atom saat mengompilasi library Anda. Misalnya, saat menggunakan gcc
,
hindari penggunaan -march=atom
dan gunakan -march=x86-64
.
Arsitektur target di Unity
Beberapa versi Unity 2019 dan 2020 tidak memiliki dukungan arsitektur x86-64 di Android. Pastikan Anda menggunakan Unity 2019.4.31f1, 2020.3.19f1, atau yang lebih baru.
Jika game Anda menggunakan versi game engine Unity yang kompatibel, lakukan langkah-langkah berikut untuk mengaktifkan target Android x86-64:
Buka Player Settings > Other Settings > Configuration > Scripting Backend, lalu pilih IL2CPP dari menu dropdown untuk mengaktifkan Scripting Backend IL2CPP.
Mengaktifkan target Android x86-64 untuk versi Unity Anda:
Unity 2018 dan versi sebelumnya: buka Player Settings > Other Settings > Target Architecture, lalu pilih kotak centang x86. Karena Unity 2018 hanya mendukung target x86, Anda tidak akan dapat membangun x86-64. Build ini akan memerlukan pengecualian dari tim peninjau. Hubungi kontak Google Anda untuk meminta pengecualian x86.
Rilis Dukungan Jangka Panjang Unity 2019 (LTS) dan yang lebih baru: buka Player Settings > Other Settings > Target Architectures, lalu aktifkan x86-64 (ChromeOS).
Mendeteksi Google Play Game di PC
Anda dapat mendeteksi platform Google Play Game di PC 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 di PC:
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 di PC. Game Anda terlihat
saat pemain mengaktifkan overlay emulator, sehingga kegagalan pemrosesan peristiwa
onPause
dapat menyebabkan pengalaman pengguna yang buruk.
Mengupdate UI
Elemen dan gestur UI tertentu tidak cocok di PC dan harus diperbarui.
Wajib:
- Mengganti tindakan UI yang memerlukan dua jari atau lebih (gestur multi-kontrol). Misalnya, Anda harus mengganti gestur cubit untuk memperbesar dan gestur multi-kontrol lainnya dengan input mouse dan keyboard yang sesuai. Untuk mengetahui detail perubahan input perangkat, lihat Dukungan input.
Direkomendasikan:
- Semua teks yang terlihat oleh pengguna harus bertuliskan "klik", bukan "ketuk".
- Daftar yang dapat di-scroll harus memiliki scrollbar.
- Area yang dapat digeser pengguna 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 di mana pun 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 sebagian besar dialog izin
Dengan pengecualian izin mikrofon, Google Play Game di PC tidak menampilkan dialog izin, jadi sebaiknya Anda sebaiknya jangan mencoba menampilkannya atau meminta izin saat runtime. Jika Anda menampilkan dialog izin sebelumnya, Anda harus mengupdate game agar tidak lagi menampilkannya di PC.
Fitur dan izin Android yang tidak didukung
Diwajibkan oleh proses rilis
Beberapa fitur hardware umum di ponsel dan tablet tidak tersedia di PC. Ini mencakup fitur hardware seperti kamera atau lokasi pemain. Game apa pun yang memerlukan fitur yang tidak ada tidak dapat didownload dan diinstal di PC pemain. Permintaan untuk fitur yang tidak ada di PC akan otomatis gagal.
Anda dapat melihat daftar lengkap fitur yang tersedia dengan mengetik:
adb shell pm list features
Agar game kompatibel dengan PC, Anda harus membuat perubahan berikut:
Lakukan penandaan fitur sebagai opsional di manifes aplikasi Anda dengan menambahkan
android:required="false"
ke deklarasi<uses-feature>
. Ini hanya berlaku untuk fitur yang telah dideklarasikan di manifes aplikasi Anda.Jangan mencoba menggunakan fitur yang tidak ada saat runtime. Jika Anda menggunakan APK yang sama di jalur seluler dan PC, deteksi lingkungan PC saat runtime dan hindari jalur kode yang relevan.
Jangan meminta izin Android yang tidak didukung saat runtime. Jika Anda menggunakan APK yang sama di jalur seluler dan PC, deteksi lingkungan PC saat runtime dan hindari jalur kode yang relevan. Anda tidak perlu memperbarui manifes.
Untuk mengetahui informasi selengkapnya tentang kompatibilitas manifes aplikasi, lihat panduan Kompatibilitas manifes aplikasi Chromebook.
Persyaratan pengujian fungsional
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
Beberapa fitur ini mungkin dicantumkan sebagai didukung saat menjalankan
pm list features
karena alasan kompatibilitas, tetapi tidak diterapkan sepenuhnya. Untuk
mengetahui informasi selengkapnya tentang 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
untuk Chromebook.
Persyaratan pengujian kualitas
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.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 tidak didukung
Izin yang biasa digunakan berikut tidak didukung di PC, sehingga game Anda harus menonaktifkannya untuk Google Play Game di PC:
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_WIFI_STATE
android.permission.BLUETOOTH
android.permission.CAMERA
android.permission.FOREGROUND_SERVICE
android.permission.GET_ACCOUNTS
android.permission.INSTALL_PACKAGES
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SYSTEM_ALERT_WINDOW
android.permission.USE_CREDENTIALS
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.WRITE_SETTINGS
com.google.android.gms.permission.ACTIVITY_RECOGNITION
Situs dan WebView eksternal
Intent browser memuat dalam browser web native di PC, bukan yang ada di lingkungan Google Play Game di PC. Ini adalah pengalaman yang ideal bagi pemain dalam sebagian besar situasi.
Untuk memudahkan porting, Google Play Game di PC mendukung
WebView. Karena
dibuka di lingkungan Google Play Game di PC, 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
Diwajibkan oleh proses rilis
Google Play Game di PC 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 di PC ditutup.
Modul yang Didukung
Modul-modul berikut saat ini tersedia dan didukung oleh Google Play Game di PC, dan akan mendukung fitur tambahan:
- 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 di PC, tetapi kami tidak dapat menjamin fungsinya.
- 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-modul berikut tidak didukung di Google Play Game di PC, tetapi tidak menyebabkan masalah di Google Play Game di PC 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
Diwajibkan oleh proses rilis
Anda tidak boleh menggunakan modul ini di PC karena dapat menyebabkan perilaku yang tidak terduga di Google Play Game di PC.
Mengaktifkan penyimpanan terbatas
Diwajibkan oleh proses rilis
Bagian ini berlaku jika game Anda membaca atau 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:
Analytics
Produk Google Analytics lama tidak berfungsi di Google Play Game di PC. Jika game menggunakan versi lama, Anda harus memigrasikannya ke Google Analytics 4.
Hal ini hanya akan memengaruhi game Anda 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.