Google Play Game masih dalam versi beta terbuka.

Kompatibilitas dan pengoptimalan PC untuk Google Play Game

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

Google Play Game 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 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), Anda dapat menyiapkan game untuk mendeteksi Google Play Game, 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 arsitektur ABI x86

Diwajibkan oleh proses rilis

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

Beberapa versi Unity 2019 dan 2020 tidak memiliki dukungan arsitektur x86 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/x86-64:

  1. Buka Player Settings > Other Settings > Configuration > Scripting Backend, lalu pilih IL2CPP dari menu dropdown untuk mengaktifkan Scripting Backend IL2CPP.

  2. Mengaktifkan target Android x86 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 ChromeOS) dan x86-64 (ChromeOS).

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.

Karena Unity 2018 hanya mendukung target x86, Anda dapat melewati dukungan x86-64. Namun, Anda tidak dapat merilis build tersebut di Android karena persyaratan 64-bit. Dalam hal ini, Anda perlu mempertahankan build terpisah untuk Google Play Game.

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 terlihat saat pemain mengaktifkan overlay emulator, sehingga kegagalan pemrosesan peristiwa onPause dapat menyebabkan pengalaman pengguna yang buruk.

Memperbarui 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 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 game agar tidak lagi menampilkannya di PC.

Fitur dan izin Android yang tidak didukung

Diwajibkan oleh proses rilis

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 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
  • 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 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.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 tidak didukung

Izin yang biasa digunakan berikut tidak didukung di PC, sehingga game Anda harus menonaktifkannya untuk Google Play Game:

  • 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
  • android.permission.RECEIVE_BOOT_COMPLETED

Situs dan WebView eksternal

Intent browser memuat dalam browser web native di PC, bukan yang ada di lingkungan Google Play Game. Ini adalah pengalaman yang ideal bagi pemain dalam sebagian besar 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

Diwajibkan oleh proses rilis

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 didukung oleh Google Play Game, dan akan mendukung fitur tambahan:

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.

Tidak Didukung

Modul-modul ini tidak didukung di Google Play Game, tetapi tidak menyebabkan masalah di Google Play Game jika gagal:

Rusak

Diwajibkan oleh proses rilis

Anda tidak boleh menggunakan modul ini di PC karena dapat menyebabkan perilaku yang tidak terduga di Google Play Game.

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:

Menonaktifkan iklan seluler di game versi PC

Diwajibkan oleh proses rilis

Guna mengoptimalkan game untuk PC, Anda harus menonaktifkan iklan seluler di versi PC karena iklan tersebut tidak kompatibel dengan PC. 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 ChromeOS.

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 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.