PC Üzerinde Google Play Games'i kullanmak için oyununuzda PC uyumluluğu ve optimizasyonuyla ilgili değişiklikler yapmanız gerekir. Bu değişiklikler, oyununuzun PC'de çalışmasını ve kullanıcı deneyiminin platform için optimize edilmesini sağlar.
Ayrıca PC Üzerinde Google Play Games'in grafik, cihaz girişi ve cihazlar arası oynama gereksinimleri vardır. Daha fazla bilgi için Başlangıç kılavuzu'na bakın.
PC uyumluluğu ve optimizasyon değişikliklerini (x86-64 desteği hariç) yaparken oyununuzu PC Üzerinde Google Play Games'i algılayacak şekilde ayarlayabilir, ardından platforma özel özellikleri devre dışı bırakabilir veya etkinleştirebilirsiniz. Bu sayede, Android mobil ve PC sürümleriniz için aynı APK'yı veya uygulama paketini kullanabilirsiniz.
Bu sayfadaki şartların ve önerilerin özeti aşağıda verilmiştir:
- x86-64 ABI'yi dahil edin (zorunlu)
- Çalışma zamanında Google Play Games'i algılama (önerilir)
- onPause etkinliğini işleme (önerilir)
- Kullanıcı arayüzü öğelerini güncelleme (zorunlu)
- Android uygulama izinleri iletişim kutularını devre dışı bırakma (gerekli)
- Desteklenmeyen Android özelliklerini ve izinlerini devre dışı bırakın (gerekli)
- WebView'ları tarayıcı amaçlarıyla değiştirin (önerilir)
- Desteklenmeyen Google Play Hizmeti API'lerini devre dışı bırakın (zorunlu)
- Kapsamlı depolamayı etkinleştirin (gerekli)
- Google Analytics 4'e geçiş yapma (önerilir)
x86-64 ABI mimarisini ekleyin
Yayın süreci için gereklidir
Platformda en iyi performans ve kararlılık için oyununuza dahil edilen tüm kitaplıkların x86-64 ABI uyumlu sürümleri gerekir.
Oyununuzun 64 bit x86 yürütülebilir dosyası göndermesi teknik olarak mümkün değilse istisna için inceleme ekibiyle iletişime geçmeniz gerekir. Oyununuz, bir istisna nedeniyle tam sertifikayı alamıyor ancak katalogda "hazır oyun" olarak yer alabiliyor.
Kitaplık derlemesi
En iyi x86-64 işlemci uyumluluğunu sağlamak için kitaplıklarınızı derlerken atom talimat setini kullanmayın. Örneğin, gcc kullanırken -march=atom yerine -march=x86-64 kullanın.
Unity'de hedef mimari
Unity 2019 ve 2020'nin bazı sürümlerinde Android'de x86-64 mimari desteği yoktur. Unity 2019.4.31f1, 2020.3.19f1 veya sonraki bir sürümü kullandığınızdan emin olun.
Oyununuzda Unity oyun motorunun uyumlu bir sürümü kullanılıyorsa x86-64 Android hedeflerini etkinleştirmek için aşağıdakileri yapın:
Player Settings > Other Settings > Configuration > Scripting Backend (Oyun Ayarları > Diğer Ayarlar > Yapılandırma > Komut Dosyası Oluşturma Arka Uç) bölümüne gidin ve açılır menüden IL2CPP'yi seçerek IL2CPP Komut Dosyası Oluşturma Arka Ucu'nu etkinleştirin.
Unity sürümünüz için x86-64 Android hedeflerini etkinleştirin:
Unity 2018 ve önceki sürümler: Player Settings > Other Settings > Target Architecture (Oyun Ayarları > Diğer Ayarlar > Hedef Mimari) bölümüne gidin ve x86 onay kutusunu işaretleyin. Unity 2018 yalnızca x86 hedeflerini desteklediğinden x86-64 oluşturamazsınız. Bu derleme için inceleme ekibinden istisna izni alınması gerekir. x86 istisnası isteğinde bulunmak için lütfen Google temsilcinizle iletişime geçin.
Unity 2019 Uzun Süreli Destek (LTS) sürümü ve sonraki sürümler: Player Settings > Other Settings > Target Architectures'a (Oynatıcı Ayarları > Diğer Ayarlar > Hedef Mimariler) gidin ve x86-64 (ChromeOS)'i etkinleştirin.
PC Üzerinde Google Play Games'i algılama
PC Üzerinde Google Play Games platformunu çalışma zamanında algılayarak oyununuzda platforma özel özellikleri etkinleştirebilir veya devre dışı bırakabilirsiniz.
Oyununuzun PC Üzerinde Google Play Games platformunda çalışıp çalışmadığını belirlemek için com.google.android.play.feature.HPE_EXPERIENCE sistem özelliğini kontrol edin:
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");
Android yaşam döngüsü olaylarını işleme
Google Play Games on PC ortamında onPause
(c++)
etkinliğini işlemek önemlidir. Oyununuz, bir oyuncu emülatör yer paylaşımını etkinleştirdiğinde görünür. Bu nedenle, onPause etkinliğini dinlememek kötü bir kullanıcı deneyimine yol açabilir.
Kullanıcı arayüzünü güncelleme
Belirli kullanıcı arayüzü öğeleri ve hareketleri PC'de uygun değildir ve güncellenmelidir.
Gerekli:
- İki veya daha fazla parmakla yapılması gereken kullanıcı arayüzü işlemlerini (çoklu dokunma hareketleri) değiştirin. Örneğin, parmakla yakınlaştırma ve diğer çoklu dokunma hareketlerini ilgili fare ve klavye girişiyle değiştirmeniz gerekir. Cihaz giriş değişiklikleriyle ilgili ayrıntılar için Giriş desteği başlıklı makaleyi inceleyin.
Önerilen:
- Kullanıcı tarafından görülebilen tüm metinlerde "dokun" yerine "tıkla" ifadesi kullanılmalıdır.
- Kaydırılabilir listelerde kaydırma çubukları olmalıdır.
- Kullanıcıların kaydırabileceği alanlarda kaydırma çubukları veya uzun mesafeleri hızlıca geçmenin başka bir yolu olmalıdır.
- Metin girişi için ekranda tıklanabilir bir klavye göstermeyin.
- Tüm metin girişleri, metin alanı sınırları içinde olmalıdır.
- Görünür öğelerdeki tıklamalar:
- Öğenin görünür sınırları içinde herhangi bir yeri tıklamayı kabul edin.
- Görünür öğenin dışındaki alanda tıklamayı kabul etmeyin.
- İletişim kutularında görünür bir kapat düğmesi olmalıdır. İletişim kutusu sınırlarının dışındaki tıklamalar algılanmaz.
Çoğu izin iletişim kutusunu devre dışı bırakma
Mikrofon ve bildirim izinleri hariç olmak üzere, PC Üzerinde Google Play Games'de izin iletişim kutuları gösterilmez. Bu nedenle, bunları göstermeye çalışmamalı veya çalışma zamanında izin istememelisiniz. Daha önce izin iletişim kutuları gösterdiyseniz oyununuzu güncelleyerek bu iletişim kutularının PC'lerde gösterilmesini engellemeniz gerekir.
Desteklenmeyen Android özellikleri ve izinleri
Yayın süreci için gereklidir
Cep telefonları ve tabletlerde bulunan bazı yaygın donanım özellikleri PC'de kullanılamaz. Kamera veya oyuncunun konumu gibi donanım özellikleri buna dahildir. Eksik özellikler gerektiren oyunlar, oyuncuların bilgisayarlarına indirilemez ve yüklenemez. Bilgisayarda eksik olan özelliklerle ilgili istekler otomatik olarak başarısız olur.
Kullanılabilir özelliklerin tam listesini görüntülemek için şunu yazın:
adb shell pm list featuresOyununuzun PC'lerle uyumlu olması için aşağıdaki değişikliklerin yapılması gerekir:
<uses-feature>beyanınaandroid:required="false"ekleyerek uygulama manifestinizdeki özellikleri isteğe bağlı olarak işaretleyin. Bu yalnızca uygulama manifestinizde zaten beyan edilmiş özellikler için geçerlidir.Çalışma zamanında eksik özellikleri kullanmaya çalışmayın. Hem mobil hem de PC kanallarınızda aynı APK'yı kullanıyorsanız PC ortamını çalışma zamanında algılayın ve ilgili kod yollarından kaçının.
Çalışma zamanında desteklenmeyen Android izinleri istemeyin. Hem mobil hem de PC kanallarınızda aynı APK'yı kullanıyorsanız çalışma zamanında PC ortamını algılayın ve ilgili kod yollarından kaçının. Manifest dosyanızı güncellemeniz gerekmez.
Uygulama manifest uyumluluğu hakkında daha fazla bilgi için Chromebook uygulama manifest uyumluluğu kılavuzuna bakın.
İşlevsel test şartları
İlk test derlemesini Google Play Console'a göndermeden önce bu donanım özelliklerini kaldırın:
android.hardware.wifiandroid.hardware.bluetoothandroid.hardware.cameraandroid.hardware.location
Bu özelliklerden bazıları, uyumluluk nedeniyle pm list features çalıştırılırken desteklenen özellikler olarak listelenebilir ancak tam olarak uygulanmamıştır. android.hardware.wifi özelliğini kaldırma hakkında daha fazla bilgi için Bağlantı durumunu ve bağlantı ölçümünü izleme başlıklı makaleyi inceleyin. Desteklenmeyen özelliklerin tam listesi için Chromebook'lar için uygulama manifesti uyumluluğu kılavuzuna bakın.
Kalite testi şartları
Sık kullanılan bu donanım özellikleri PC'lerle uyumlu değildir. Bu nedenle, Google Play Console'a son gönderimden önce bunları kaldırmanız gerekir:
android.hardware.audio.proandroid.hardware.bluetoothandroid.hardware.cameraandroid.hardware.consumerirandroid.hardware.locationandroid.hardware.nfcandroid.hardware.sensor.lightandroid.hardware.sensor.accelerometerandroid.hardware.sensor.barometerandroid.hardware.sensor.compassandroid.hardware.sensor.gyroscopeandroid.hardware.sensor.proximityandroid.hardware.telephonyandroid.hardware.touchscreenandroid.hardware.usb.accessoryandroid.hardware.usb.hostandroid.hardware.wifiandroid.software.midi
Desteklenmeyen izinler
Aşağıdaki yaygın olarak kullanılan izinler PC'lerde desteklenmez. Bu nedenle, oyununuzun PC Üzerinde Google Play Games için bu izinleri devre dışı bırakması gerekir:
android.permission.ACCESS_COARSE_LOCATIONandroid.permission.ACCESS_FINE_LOCATIONandroid.permission.ACCESS_WIFI_STATEandroid.permission.BLUETOOTHandroid.permission.CAMERAandroid.permission.FOREGROUND_SERVICEandroid.permission.GET_ACCOUNTSandroid.permission.INSTALL_PACKAGESandroid.permission.READ_CONTACTSandroid.permission.READ_EXTERNAL_STORAGEandroid.permission.READ_PHONE_STATEandroid.permission.RECEIVE_BOOT_COMPLETEDandroid.permission.REQUEST_INSTALL_PACKAGESandroid.permission.SYSTEM_ALERT_WINDOWandroid.permission.USE_CREDENTIALSandroid.permission.WRITE_EXTERNAL_STORAGEandroid.permission.WRITE_SETTINGScom.google.android.gms.permission.ACTIVITY_RECOGNITION
Harici web siteleri ve WebView'lar
Tarayıcı amaçları, PC Üzerinde Google Play Games ortamındaki tarayıcı yerine PC'nin yerel web tarayıcısında yüklenir. Bu, çoğu durumda oyuncular için ideal bir deneyimdir.
Taşıma işlemini kolaylaştırmak için PC Üzerinde Google Play Games, WebView'ı destekler. Bu, PC Üzerinde Google Play Games ortamında açıldığından normal masaüstü tarayıcısı bulunmaz. Daha önce Hizmet Şartlarınızı, Gizlilik Politikanızı veya benzer içerikleri paylaşmak için WebView kullanıyorsanız bunun yerine bir tarayıcı amaçlı işlemi çağırmanız gerekir.
Desteklenmeyen Google Play Hizmetleri API'lerini devre dışı bırakma
Yayın süreci için gereklidir
PC Üzerinde Google Play Games, Google Play Hizmetleri API'lerinin yalnızca bir alt kümesini içeren kendi Google Play Hizmetleri varyantını kullanır. Uygulamanızın, PC'de atlanan veya desteklenmeyen modüllere çok fazla bağlı olmadığını onaylamanız gerekir. Bazı modüllerin kullanılabileceğini ancak işlevlerinin her zaman desteklenmediğini unutmayın. Örneğin, PC Üzerinde Google Play Games kapatıldığında Firebase Cloud Messaging çalışmaz.
Desteklenen Modüller
Bu modüller şu anda PC Üzerinde Google Play Games'de kullanılabilir ve desteklenir. Ek özellik desteği planlanmaktadır:
- Google ile oturum açma (hesap aktarma, Smart Lock, SMS doğrulaması, şifre karmaşıklığı hesaplaması dahil değildir)
- Cronet
- Google Play Games Hizmetleri
- Görevler
- Görme
- Google Pay
Sınırlı Destek
Aşağıdaki modüller kısmen işlevseldir. Bu oyunları PC Üzerinde Google Play Games'de desteklemek için elimizden geleni yapacağız ancak işlevlerini garanti edemeyiz.
- Google Cloud Messaging (Desteği sonlandırıldı, Firebase Cloud Messaging'i kullanın)
- Firebase Authentication (Telefon numarasıyla kimlik doğrulama çalışmaz)
- Firebase Cloud Messaging
- Firebase Common Libraries
- Firebase ML
- Firebase Remote Config
- Firebase Analytics
Desteklenmiyor
Bu modüller, PC Üzerinde Google Play Games'de desteklenmez ancak başarısız olduklarında PC Üzerinde Google Play Games'de sorunlara neden olmaz:
- Google Analytics (Kullanımdan kaldırıldı, Firebase Analytics'i kullanın)
- Google Cast
- Awareness API
- Drive (Desteği sonlandırıldı, yakında kaldırılacak)
- FIDO
- Firebase Realtime Database
- Firestore
- Firebase A/B Testi
- Google Fit
- Address API
- Instant Apps API
- Location API
- Google Haritalar SDK'sı
- Yakınlarda
- Panorama
- Yerler
- Google+
- SafetyNet (Desteği sonlandırıldı. Yakında kullanıma sunulacak Play Integrity API'ye kaydolmak için lütfen ilgi alanları formunu doldurun.)
- Google Etiket Yöneticisi
- Wear OS
Bozuk
Yayın süreci için gereklidir
Bu modüller, PC Üzerinde Google Play Games'de beklenmedik davranışlara neden olabileceğinden PC'lerde kullanılmamalıdır.
Kapsamlı depolamayı etkinleştirme
Yayın süreci için gereklidir
Bu bölüm, oyununuz harici depolama alanına okuma veya yazma işlemi yapıyorsa geçerlidir. Depolama alanına okuma ve yazma için alternatif bir yöntem olarak kapsamlı depolama alanı zorunluluğu getirilmiştir. Bu işlem, oyuncudan aşağıdaki hassas izinleri isteme ihtiyacını ortadan kaldırır:
android.permission.READ_EXTERNAL_STORAGEandroid.permission.WRITE_EXTERNAL_STORAGE
Kapsamlı depolama alanı hakkında daha fazla bilgi için:
Analizler
Eski Google Analytics ürünleri, PC Üzerinde Google Play Games'de çalışmaz. Bu durum oyunlarınız için geçerliyse oyununuzu Google Analytics 4'e taşımanız gerekir.
Bu durum, yalnızca şu anda Google Analytics 360 kullanıyorsanız oyununuzu etkiler. Oyununuzdaki analiz etkinliklerini izlemek için Firebase SDK'sını kullanıyorsanız ve oyununuzu Google Analytics Konsolu'nda mülk olarak görüyorsanız başka bir işlem yapmanız gerekmez.