PC Üzerinde Google Play Games Geliştirici Emülatörü, PC Üzerinde Google Play Games için geliştirici odaklı bir emülatördür. Oyuncu deneyiminden farklı olarak kendi paketlerinizi yükleyip hata ayıklama işlemi yapabilirsiniz. Ayrıca, oyununuzun çeşitli PC yapılandırmalarında beklendiği gibi performans göstermesini sağlamak için en boy oranı, fare emülasyonu ve grafik arka ucu gibi çeşitli oyuncu yapılandırmalarını simüle edebilirsiniz.
Emülatör başlatılıyor
Yüklendikten sonra "Google Play Games Geliştirici Emülatörü" başlangıç menüsü öğeniz ve emülatörü başlatmak için bir masaüstü kısayoluna sahip olursunuz. Pencereyi kapattığınızda emülatör sistem tepsinizde kalır.
Oturum açma
Emülatörü ilk kez çalıştırdığınızda Google Hesabınızda oturum açmanız istenir. Geliştirme için kullanmayı planladığınız giriş kimlik bilgilerini kullanın.
Sistem tepsisi simgesini sağ tıklayıp Geliştirici Seçenekleri'ni seçip Oturumu kapatmaya zorla'yı tıklayarak oturumu kapatabilirsiniz. Bunu yaptığınızda, emülatör hemen yeniden başlatılır ve tekrar oturum açmanızı ister.
Navigasyon
Başlatıldıktan sonra tipik bir Android ana ekranı görürsünüz. Sol fare tıklamaları, fare emülasyonu modunda olduğu gibi doğrudan parmakla yapılan dokunuşlara dönüştürülür. Geliştirilmek üzere başka cihazdan yüklenen oyunlar uygulama listesinde görünür. Bu listeye, masaüstünde tıklayıp yukarı sürükleyerek (telefonda veya tablette yukarı kaydırma gibi) ulaşabilirsiniz.
Fare çevirisinin yanı sıra PC Üzerinde Google Play Games Geliştirici Emülatörü, gezinmeyi iyileştirmek için klavye kısayolları sağlar:
ctrl + h : ana sayfa düğmesine basınctrl + b : geri düğmesine basınF11 veyaalt + enter : Tam ekran ve pencereli mod arasında geçiş yapınüst karakter + sekme : Giriş SDK'sı için geçerli tuş eşlemeleri dahil olmak üzere PC Üzerinde Google Play Games yer paylaşımını açar
Oyun yükleme
PC Üzerinde Google Play Games Geliştirici Emülatörü, paketleri yüklemek için Android Debug Bridge (adb) kullanır.
adb uyumluluğu
adb
uygulamasının mevcut sürümleri, PC Üzerinde Google Play Games Geliştirici Emülatörü ile uyumludur.
Ayrıca emülatörü yüklediğinizde C:\Program
Files\Google\Play Games Developer Emulator\current\emulator
adresine uyumlu bir sürüm yüklenir.
Bu talimatları uygulamak için adb, $PATH
içinde kullanılabilir olmalıdır. adb devices
komutuyla adb
yönergesinin doğru şekilde yapılandırıldığını doğrulayabilirsiniz
adb devices
List of devices attached
localhost:6520 device
Oyunu yükle
Google Play Games for PC Emulator
uygulamasını başlatKomut isteminize
adb devices
yazın. Şunları görürsünüz:adb devices List of devices attached localhost:6520 device
Sorun Giderme:
- Hata alırsanız Adb uyumluluğu bölümündeki talimatları uyguladığınızı doğrulayın.
- Bir cihaz görmüyorsanız
6520
bağlantı noktası üzerinden yeniden bağlanmayı deneyin:
adb connect localhost:6520
Oyununuzu yüklemek için
adb install path\to\your\game.apk
yazın. Android App Bundle (aab) oluşturduysanız bundletool talimatlarını inceleyin ve bunun yerinebundletool install-apks
kullanın.Oyununuzu çalıştırmak için:
- Oyununuzu çalıştırmak için
adb shell monkey -p your.package.name 1
yazın veyour.package.name
kısmını oyununuzun paket adıyla değiştirin. - PC Üzerinde Google Play Games Geliştirici Emülatörü'nde, oyununuzu çalıştırmak için simgeyi tıklayın. Tıpkı bir Android telefonda olduğu gibi, yüklü oyunların listesini görmek için ana ekranı "yukarı kaydırmanız" gerekir.
- Oyununuzu çalıştırmak için
Oyunlarda hata ayıklama
Diğer oyunlarda yaptığınız gibi hata ayıklamak için Android Debug Bridge (adb) kullanın.
Emülatör, localhost:6520
üzerinden bağlanan bir cihaz olarak görünür.
adb logcat
, tıpkı Android Studio dahil olmak üzere logcat çıktısını düzeltmeye veya filtrelemeye yardımcı olan araçlarda beklendiği gibi çalışır.
Günlüklere, adb
yanı sıra %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs
dizininizde de erişilebilir. Burada en kullanışlı öğe, emülatörün başladığı andan itibaren adb logcat
ürününün yankı çıkaracağı her şeyi temsil eden AndroidSerial.log
öğesidir.
Geliştirici ayarları
PC Üzerinde Google Play Games Geliştirici Emülatörü, son kullanıcı deneyimi yerine geliştiricinin verimliliğine odaklanır. Bu, PC Üzerinde Google Play Games deneyimi yerine standart Android başlatıcıyı kullanmak ve oyuncular için aksi takdirde otomatik olarak etkinleştirilip devre dışı bırakılan özellikler üzerinde kontrol yapmak da dahil olmak üzere Android sistemine kesintisiz erişiminizin olduğu anlamına gelir.
Fare girişi test ediliyor
Geliştirme sırasında, PC Üzerinde Google Play Games Geliştirici Emülatörü size doğrudan fare girişi yapmak yerine varsayılan olarak dokunma emülasyonunu kullanır. Sistem tepsisi simgesini sağ tıklayıp Geliştirici Seçenekleri'ni ve ardından PC modu (KiwiMouse)'u seçerek doğrudan fare girişini etkinleştirebilirsiniz.
PC Üzerinde Google Play Games'de iki fare modu vardır: fare tıklamalarını tek dokunmalara çeviren emüle edilmiş mod ve oyunların fare işlemlerini yerel olarak ele almasına ve işaretçi yakalama işlemi gerçekleştirmesine olanak tanıyan "PC modu" geçiş modu. PC Üzerinde Google Play Games'de fare girişiyle ilgili ayrıntılar için Fare girişini ayarlama başlıklı makaleyi inceleyin.
Oynatıcı istemcisinde bu öğe manifest dosyanıza eklendiğinde emülasyon devre dışı bırakılır:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
Bu özellik işaretinin, geliştirme ortamı üzerinde hiçbir etkisi yoktur.
En boy oranlarını test etme
Geliştirici emülatörü, en boy oranını birincil ekrandan alan oynatıcı istemcisinin aksine 16:9 en boy oranında başlatılır. Sistem tepsisi simgesini sağ tıklayıp Geliştirici Seçenekleri'ni ve ardından Görüntü Oranı bölümünden herhangi bir seçeneği belirleyerek oyunun farklı oyuncuların ekranlarında nasıl göründüğünü test edebilirsiniz.
En boy oranınızı yapılandırmak için tercih edilen yöntem android:minAspectRatio
ve android:maxAspectRatio
kullanmaktır.
Örneğin, dikey bir oyunun en boy oranı 9/16
veya 0.5625
olur. Bu nedenle, oyununuzun kareden daha geniş olmasını önlemek için maksimum en boy oranını 1
ayarlamak isteyebilirsiniz:
<activity android:maxAspectRatio="1">
...
</activity>
Benzer şekilde, yatay bir oyun 16/9
veya yaklaşık olarak 1.778
olur. Bu nedenle, kareden daha ince olmasını önlemek için minimum 1
en boy oranını ayarlamak isteyebilirsiniz:
<activity android:minAspectRatio="1">
...
</activity>
Neleri test edebilirsiniz?
Oyununuz manifest dosyasında yalnızca dikey modları destekliyorsa kullanıcıların PC'lerinde nasıl göründüğünü görmek için açılır listeden 9:16 (Dikey) seçeneğini belirleyebilirsiniz. Aksi takdirde, oyununuzun manifest dosyanızda desteklediğiniz en geniş ve en dar görüntü oranlarında çalıştığını doğrulayın ve 16:9 (Varsayılan) (veya yalnızca tam sertifika için dikey moddaysa 9:16 (Dikey) gerektiğini unutmayın.
Oluşturma arka uçlarını test etme
PC Üzerinde Google Play Games, OpenGL ES çağrılarının DirectX veya Vulkan arka ucu kullanılarak ana bilgisayar tarafından doğru şekilde işlenmesini sağlamak için uyumluluk katmanı olarak ANGLE'ı kullanır. Emülatör, OpenGL'de olmasa da doğrudan Vulkan'ı destekler. Bu katman, mobil olarak yalnızca sıkıştırılmış doku biçimlerini PC uyumlu biçimlere de dönüştürür. Sistem tepsisi simgesini sağ tıklayıp Grafik Yığınını Geçersiz Kılma'yı seçerek, bunu sisteminizin varsayılan ayarına ayarlayabilir veya uyumluluk testi için vulkan'ı zorla açık ya da kapalı duruma getirebilirsiniz.
Neleri test edebilirsiniz?
Desteklenen doku biçimlerinde ve masaüstünde çeşitli mobil özellikleri emüle etmek için gereken adımlarda küçük farklılıklar vardır. Oyununuzun profilini çıkarıp optimize ederken her bir arka ucu kontrol etmek faydalı olabilir.
PC oyununuzun profilini oluşturma
Emülatör, tüketici istemcisiyle aynı teknolojiyi kullandığından performans profili oluşturmak için uygun bir ortamdır.
Perfetto, Android'de performans analizi sağlayan bir araçtır. Aşağıdaki adımları uygulayarak Perfetto izini toplayabilir ve görüntüleyebilirsiniz:
PowerPoint isteminde
adb
kullanarak iz başlatınadb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
--time
işareti, toplanacak izlemenin süresini belirtir.Bu örnekte iz 10 saniyedir.--time
işaretinden sonraki bağımsız değişkenler, hangi etkinliklerin izleneceğini belirtir. Bu örnektegfx
grafikleri,wm
pencere yönetimini vesched
işlem planlama bilgilerini belirtir. Bunlar, profil oluşturma oyunlarıyla ilgili yaygın işaretlerdir ve tam referans mevcuttur.--out
işareti, bir sonraki adımda emülatörden ana makineye alınan çıkış dosyasını belirtir.
İzi barındırıcınızdan alın
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
İzi Perfetto kullanıcı arayüzünde açın
- ui.perfetto.dev sayfasını açın.
- Gezinme bölümünde sol üst köşeden İzleme dosyasını aç'ı seçin.
- Önceki adımda indirdiğiniz
example.trace
dosyasınıDownloads/
dizininizde açın.
İzi, Perfetto kullanıcı arayüzünde inceleyin. Bazı ipuçları:
- Her işlemin kendi satırı vardır. Bu satır, işlemdeki tüm iş parçacıklarını gösterecek şekilde genişletilebilir. Bir oyunun profilini oluşturuyorsanız muhtemelen ilk satır işlemdir.
- Control tuşunu basılı tutup kaydırma tekerleğini kullanarak yakınlaştırabilir ve uzaklaştırabilirsiniz.
sched
etkinliği kullanılırken her iş parçacığı için, iş parçacığının durumunun ne zaman çalıştığını, çalıştırılabilir, uykuda veya engellenmiş olduğunu gösteren bir satır olur.gfx
gibi bir etkinliği etkinleştirdiğinizde, çeşitli iş parçacıkları tarafından yapılan çeşitli grafik çağrılarını görebilirsiniz. Ne kadar sürdüğünü görmek için tek tek "dilimleri" seçebilir veya bir satır boyunca sürükleyerek alt kısımda bir "dilimler" bölümünün açılmasını sağlayabilir ve seçtiğiniz zaman diliminde tüm dilimlerin ne kadar sürdüğünü gösterebilirsiniz.
Grafik Profili Oluşturma
Bazı grafik profili oluşturma işlemini RenderDoc ile yapmak mümkündür.
ANDROID_EMU_RENDERDOC
ortam değişkenini boş olmayan bir dizeye ("1"
gibi) ayarlayın.TMP
ortam değişkenini%USERPROFILE%\AppData\LocalLow
olarak ayarlayın. Bu, Renderdoc'a günlük dosyalarını emülatör korumalı alanı içinde erişilebilir bir yere yerleştirmesini bildirir.Vulkan arka ucunu kullanıyorsanız. Grafik Ayarları > Vulkan Örneği Dolaylı Katmanlar'ı seçin ve VKLAYER_RENDERDOC_Capture'ın işaretli olduğundan emin olun.
PC Üzerinde Google Play Games Geliştirici Emülatörü'nü başlatın. Destek etkin olduğu sürece üst kısma bir RenderDoc yer paylaşımı çizilir.
RenderDoc'u PC Üzerinde Google Play Games Geliştirici Emülatörü başlatılmadan önce veya sonra istediğiniz zaman başlatın.
Dosya > Çalıştırılan Örneğe Ekle'yi tıklayın ve crosvm'yi seçin.
Ortam Değişkenlerini Belirtin
Renderdoc'un çalışması için Windows'da ortam değişkenleri eklemeniz veya değiştirmeniz gerekir. Kullanıcı arayüzü, PowerPoint veya cmd.exe kullanarak ortam değişkenlerini değiştirebilirsiniz.
Kullanıcı arayüzünü kullanma
- Çalıştır iletişim kutusunu açmak için
Win+R tuşlarına basın. - Sistem Özellikleri penceresini açmak için
sysdm.cpl
yazın. - Etkin değilse Gelişmiş sekmesini seçin.
- Ortam Değişkenleri düğmesini tıklayın.
Burada, yeni bir ortam değişkeni oluşturmak için Yeni düğmesini veya bir değişken seçip düzenlemek için Düzenle düğmesini tıklayabilirsiniz.
PowerPoint'i kullanma
Powershell penceresinde şu ifadeyi yazın:
$Env:VARIABLE_NAME=VALUE
VARIABLE_NAME
ve VALUE
değerlerini ayarlamak istediğiniz değerlerle değiştirin. Örneğin, ANDROID_EMU_RENDERDOC
değerini "1"
türüne ayarlamak için:
$Env:ANDROID_EMU_RENDERDOC="1"
cmd.exe kullanma
cmd.exe penceresine şunu yazın:
set VARIABLE_NAME=VALUE
VARIABLE_NAME
ve VALUE
değerlerini ayarlamak istediğiniz değerlerle değiştirin. Örneğin, ANDROID_EMU_RENDERDOC
değerini "1"
türüne ayarlamak için:
set ANDROID_EMU_RENDERDOC="1"
Android 11 (API düzeyi 30) veya sonraki sürümler için ipuçları
PC Üzerinde Google Play Games en son Android sürümleriyle güncellenir. Android'in en son sürümüyle çalışmayla ilgili bazı ipuçlarını burada bulabilirsiniz.
Araçları güncel tutun
Android Studio, geliştirici emülatörüyle uyumlu bir adb sürümünü yükler; ancak, bazı oyun motorları daha eski bir adb sürümü içerir. Bu durumda, geliştirici emülatörünü yükledikten sonra C:\Program Files\Google\Play Games Developer
Emulator\current\emulator
adresinde uyumlu bir adb
sürümü bulabilirsiniz.
Bir adb
sürümünü başlatırsanız diğeri sonlandırılır. Diğer bir deyişle, oyun motorunuz kendi adb
örneğini otomatik olarak başlatırsa her dağıtım yaptığınızda geliştirici emülatörüyle birlikte gelen adb
sürümünü yeniden başlatıp yeniden bağlamanız gerekebilir.
Android App Bundle kullanıyorsanız GitHub deposundan Bundletool'un en son sürümünü yüklemeniz gerekir.
Kısıtlı Depolama
Android 11 (API düzeyi 30) veya sonraki sürümlerde kapsamlı depolama alanı bulunur. Bu sayede harici depolama alanındaki uygulama ve kullanıcı verileri için daha iyi koruma sağlanır. Oyununuzu kapsamlı depolama alanı gereksinimleriyle uyumlu hale getirmenin yanı sıra APK Genişletme Dosyalarını (obb) veya öğe verilerini PC Üzerinde Google Play Games Geliştirici Emülatörü'ne yüklemek için ek adımlar gerçekleştirmeniz gerekir. Oyununuzda bu dosyalara erişirken sorun yaşarsanız şu adımları uygulayın:
- Uygulamanızın okuyabileceği bir dizin oluşturun.
- Genişletme dosyalarınızı emülatöre aktarın.
adb shell mkdir /sdcard/Android/obb/com.example.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game
Paket Görünürlüğü
Yeni paket görünürlüğü kuralları nedeniyle, Android 11 (API düzeyi 30) veya sonraki sürümleri hedefleyen uygulamaların bir cihazda yüklü diğer uygulamalar hakkında bilgi sorgulaması engellenir. Yani, oyununuzun Play Store'dan değil, adb
aracılığıyla başka cihazdan yüklendiğinde Play Hizmetleri'ne erişimi engellenir. IAP'nizi başka cihazdan yüklenmiş bir oyunla test etmek için AndroidManifest.xml
dosyanızdaki "com.android.vending
" paketine aşağıdaki şekilde bir sorgu eklemeniz gerekir:
<manifest>
<queries>
<package android:name="com.android.vending" />
</queries>
</manifest>
Oyununuzu tüketici istemcisine yükleme
Play Games Hizmetleri kataloğunda listelenene kadar bir oyunu tüketici istemcisine yükleyemezsiniz. Oyununuzun tek sürümü yayınlandıktan sonra, yayınlanmadan önce gelecekteki güncellemeleri doğrulamak için bir dahili test kanalı oluşturabilirsiniz.
Oyuncu istemcisi, PC Üzerinde Google Play Games Geliştirici Emülatörü'nün geliştirici odaklı özelliklerini desteklemiyor. Bunun en iyi kullanım şekli, ilk sürümden sonra uçtan uca oyuncu deneyimini test etmek amacıyla, oyun yayınlanmadan önce kalite kontrolü yapmaktır.