Da Google Play Games auf dem PC eine standardmäßige Android-Laufzeitumgebung bietet, gibt es keine Unterschiede beim Packen Ihres Spiels für Mobilgeräte oder PCs, außer dass Sie x86- oder x86-64-Binärdateien einfügen müssen. Wenn möglich, sollten Sie dasselbe APK oder App Bundle auf dem PC wie für mobile Builds verwenden.
Wenn Sie ein Paket für Mobilgeräte und Google Play Games auf dem PC verwenden, sollten Sie Google Play Games auf dem PC-spezifische Funktionen zur Laufzeit aktivieren, indem Sie entweder das Vorhandensein einer Tastatur erkennen:
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
Oder so:"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");