Memaketkan game untuk Google Play Game di PC

Karena Google Play Game di PC menyediakan lingkungan runtime Android standar, tidak ada perbedaan antara memaketkan game untuk perangkat seluler atau PC selain memastikan bahwa Anda menyertakan biner x86 atau x86-64. Jika memungkinkan, Anda harus menggunakan APK atau App Bundle yang sama di PC seperti yang Anda gunakan untuk build versi seluler.

Saat menggunakan satu paket di seluruh perangkat seluler dan Google Play Game di PC, sebaiknya aktifkan fitur khusus Google Play Game di PC saat runtime dengan mendeteksi kehadiran keyboard:

Kotlin

val hasKeyboard = resources.configuration.keyboard == KEYBOARD_QWERTY

Java

boolean hasKeyboard = getResources().getConfiguration().keyboard == KEYBOARD.QWERTY

C#

var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
var resources = currentActivity.Call<AndroidJavaObject>("getResources");
var configuration = resources.Call<AndroidJavaObject>("getConfiguration");
var keyboard = configuration.Get<int>("keyboard");
var hasKeyboard == 2; // Configuration.KEYBOARD_QWERTY

Atau dengan memeriksa fitur sistem "com.google.android.play.feature.HPE_EXPERIENCE":

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");