بسته بندی یک بازی برای بازی های Google Play در رایانه شخصی

از آنجایی که بازی‌های Google Play روی رایانه شخصی یک محیط اجرای استاندارد اندروید را ارائه می‌کند، هیچ تفاوتی بین بسته‌بندی بازی خود برای تلفن همراه یا رایانه شخصی به غیر از اطمینان از گنجاندن باینری‌های x86 یا x86-64 وجود ندارد. در صورت امکان، باید از همان APK یا App Bundle در رایانه شخصی استفاده کنید که برای ساخت‌های موبایل استفاده می‌کنید.

هنگام استفاده از یک بسته در تلفن همراه و بازی‌های Google Play در رایانه شخصی، بهتر است Google Play Games را در زمان اجرا با تشخیص وجود صفحه کلید، ویژگی‌های خاص رایانه شخصی را فعال کنید:

val hasKeyboard = resources.configuration.keyboard == KEYBOARD_QWERTY

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

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

یا با بررسی ویژگی سیستم "com.google.android.play.feature.HPE_EXPERIENCE" :

var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  
PackageManager pm = getPackageManager();
boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  
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");