Opakuj grę do Gier Google Play na PC

Ponieważ Google Play Games na PC zapewnia standardowe środowisko uruchomieniowe Androida, nie ma różnic między pakowaniem gry na urządzenia mobilne a pakowaniem na PC, poza tym, że musisz uwzględnić pliki binarne x86 lub x86-64. W miarę możliwości używaj na komputerze tego samego pliku APK lub tego samego pakietu aplikacji co w przypadku wersji mobilnych.

Jeśli używasz jednego pakietu na urządzeniach mobilnych i w Grach Google Play na PC, najlepiej jest włączyć funkcje Gier Google Play na PC w czasie działania, korzystając z wykrywania obecności klawiatury:

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 

Możesz też sprawdzić, czy masz włączoną funkcję "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");