Bu belgede, oyun yükleyicinizi kullanarak oyununuzu PC Üzerinde Google Play Games'de nasıl yayınlayacağınız açıklanmaktadır.
Geliştirici tarafından yüklenen akışta, sağladığınız oyun yükleyicisi oyunun yüklenmesini, güncellenmesini ve kaldırılmasını yönetmelidir.
Başlamadan önce
Google Play Games SDK'sını oyununuza entegre edin.
Oyununuzu WAB dosyası olarak paketleme
PC Üzerinde Google Play Games'de oyununuzun yükleyicisinin, Windows uygulama paketi (WAB) dosyası olarak Google Play Console'a yüklenmesi gerekir. WAB dosyası oluşturmak için aşağıdaki adımları uygulayın:
Play yayınlama aracını indirin. Bu aracı Windows komut satırında veya PowerShell'de çalıştırabilirsiniz.
Herhangi bir adla Play yayınlama yapılandırma dosyasını oluşturun. Örneğin, aşağıdaki biçimde
play_publishing_config.xml:<?xml version="1.0" encoding="UTF-8"?> <play-publishing-config version="1.0"> <application> <package-name>PACKAGE_NAME</package-name> <version-name>VERSION_NAME</version-name> </application> <installer requiresElevation=INSTALLER_REQUIRES_ELEVATION acceptsCommandLineArguments=ACCEPTS_COMMAND_LINE_ARGUMENTS> <path>INSTALLER_PATH</path> <installation-path-registry-location> <key-name>UNIQUE_REGISTRY_PATH</key-name> <value-name>InstallLocation</value-name> </installation-path-registry-location> </installer> <launcher requiresElevation=LAUNCHER_REQUIRES_ELEVATION> <launch-path-registry-location> <key-name>UNIQUE_REGISTRY_PATH</key-name> <value-name>InstallLocation</value-name> </launch-path-registry-location> <executable-invocation> <filename>RELATIVE_PATH_TO_LAUNCHER_EXE</filename> <arguments>LAUNCHER_ARGS_IF_ANY</arguments> </executable-invocation> </launcher> <uninstaller requiresElevation=UNINSTALLER_REQUIRES_ELEVATION> <uninstall-path-registry-location> <key-name>UNIQUE_REGISTRY_PATH</key-name> <value-name>UninstallString</value-name> </uninstall-path-registry-location> </uninstaller> </play-publishing-config>
Aşağıdakini değiştirin:
PACKAGE_NAME: Oyununuzun paket adı. Bu, Google Play'de oyununuzla ilişkilendirilecek benzersiz tanımlayıcıdır. Örneğin,com.yourcompany.yourgame. Paket adı aşağıdaki kurallara uymalıdır:- En az iki segment (bir veya daha fazla nokta) içermelidir.
- Her segment bir harfle başlamalıdır.
- Tüm karakterler alfanümerik veya alt çizgi (
[a-zA-Z0-9_]) olmalıdır.
VERSION_NAME: Oyunun sürüm dizesi. Bu, rastgele bir dize olabilir ancak oyununuz için yüklenen tüm WAB'ler arasında benzersiz olmalıdır. Örneğin:1.0,1.0.1-beta,2025.11.24,v1.rc1.INSTALLER_REQUIRES_ELEVATION: Yükleme işleminin tamamlanması için yükleyici yürütülebilir dosyasının yönetici olarak çalıştırılması gerekip gerekmediğini gösterir.- "true": Çalıştırılabilir dosyayı yönetici olarak çalıştırın.
- "false": Yürütülebilir dosyayı mevcut kullanıcı olarak çalıştırın.
ACCEPTS_COMMAND_LINE_ARGUMENTS: Yükleyicinin, otomatik oynatma özelliğini etkinleştirmek için komut satırı bağımsız değişkenlerini kabul edip edemeyeceğini belirten bir Boole değeridir. Bu isteğe bağlıdır ve varsayılan değer false'tur. Daha fazla bilgi için Otomatik oynatmayı etkinleştirme başlıklı makaleyi inceleyin.INSTALLER_PATH: WAB'deki yükleyici dosyanızın yolu. Bu yol, Play yayınlama yapılandırmasının üst dizinine göre mutlak veya göreli olabilir. Örneğin,path\to\test\installer. Oyununuzun yükleyici yürütülebilir dosyasını imzalamak için authenticode ve kod imzalama özelliğini kullanmayı unutmayın.UNIQUE_REGISTRY_PATH: Windows kayıt defteri anahtarının yolu. Bu yol,HKEY_LOCAL_MACHINEveyaHKEY_CURRENT_USERgibi bir kayıt defteri köküne göre sağlanmalıdır. Yol dizesine kayıt defteri kökü adını eklemeyin. Örneğin, yükleyiciHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueNameyazarsa yalnızcaSoftware\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueNamebelirtin. PC Üzerinde Google Play Games, başlatma ve kaldırma için gereken değerleri bulmak amacıyla bu yolu birden fazla hive altında arar.INSTALLER_PATHiçinde belirtilen yürütülebilir dosya bu kayıt defteri anahtarlarını oluşturmalıdır. Yükleme tamamlanmadan önceinstallation-path-registry-location,launch-path-registry-locationveuninstall-path-registry-locationaltında belirtilen bu kayıt defteri anahtarı ve değer adı çiftleri oluşturulmalıdır. ÖrnekteInstallLocationveUninstallStringkullanılsa da yükleyiciniz üçü için de karşılık gelen kayıt defteri girişleri oluşturduğu sürece bu<value-name>etiketlerinde herhangi bir ad belirtebilirsiniz. PC Üzerinde Google Play Games, oyunu başlatmak ve kaldırmak için bu değerleri kullanır. Oyununuzda başlatıcı kullanılıyorsa bu yol, başlatıcının yükleme bilgilerini içeren kayıt defteri anahtarını göstermeli velaunch-path-registry-locationile belirtilen kayıt defteri girişindeki değer, başlatıcının dizinini göstermelidir.Bu yol, kullanıcının makinesinde benzersiz olmalıdır. Örneğin:
SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueName.Oyun yükleyiciniz 64 bit Windows'da çalışan 32 bit bir uygulamaysa Windows, kayıt defteri girişlerini
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Nodealtına yazmak için kayıt defteri yönlendirmesini kullanır. Örneğin,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueNameadresine yapılan bir yazma işlemiHKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\YourUniqueNameadresine yönlendirilir.LAUNCHER_REQUIRES_ELEVATION: Başlatıcı veya oyun yürütülebilir dosyasının her başlatıldığında yönetici olarak çalıştırılması gerekip gerekmediğini gösterir.- "true": Çalıştırılabilir dosyayı yönetici olarak çalıştırın.
- "false": Yürütülebilir dosyayı mevcut kullanıcı olarak çalıştırın.
RELATIVE_PATH_TO_LAUNCHER_EXE: Yükleme dizinindeki başlatıcı veya oyun yürütülebilir dosyanızın yolu. Bu, başlatıcınızın veya oyununuzun yürütülebilir dosya adını içermelidir. Örneğin, başlatıcı veya oyun dosyanızın adı mygame.exe ise ve {INSTALL_DIR}\Resources\mygame.exe altında bulunuyorsa Resources\mygame.exe yazmanız gerekir.LAUNCHER_ARGS_IF_ANY: Başlatıcınıza veya oyununuza iletilmesi gereken tüm komut satırı bağımsız değişkenleri. Bu giriş isteğe bağlıdır.- Bir yürütülebilir dosyayla ilişkili birden fazla bağımsız değişken varsa bunlar boşlukla ayrılmalıdır.
- Yürütülebilir dosya gerektiriyorsa bağımsız değişkenlerin başına "--" veya "-" eklenmelidir.
UNINSTALLER_REQUIRES_ELEVATION: Kaldırma işleminin tamamlanması için kaldırma programı yürütülebilir dosyasının yönetici olarak çalıştırılması gerekip gerekmediğini gösterir.- "true": Çalıştırılabilir dosyayı yönetici olarak çalıştırın.
- "false": Yürütülebilir dosyayı mevcut kullanıcı olarak çalıştırın.
Örnek Play yayınlama yapılandırma dosyası
Oyun yükleyicisi
game_installer.exeve oyun başlatıcısılauncher.exeolanMyGameadlı bir oyunu ele alalım. Örnekte CDATA'nın nasıl kullanılacağı da gösterilmektedir.play_publishing_config.xmlsimgesi aşağıdaki gibi görünür:<?xml version="1.0" encoding="UTF-8"?> <play-publishing-config version="1.0"> <application> <!-- The package name for your game. --> <package-name>com.mycompany.mygame</package-name> <!-- The game's version string. --> <version-name>1.0.0</version-name> </application> <!-- If requiresElevation is "true", installer runs as Administrator and a UAC prompt is displayed. This is required for system-wide installs (e.g., to Program Files) or writing to HKLM. --> <!-- If acceptsCommandLineArguments is "true", the installer must be able to accept command-line arguments to enable the auto-play feature. --> <installer requiresElevation="true" acceptsCommandLineArguments="true"> <!-- Path to your installer executable. --> <path>game_installer.exe</path> <!-- The registry location where the installer writes the installation path. --> <installation-path-registry-location> <!-- Registry key path (typically under HKLM or HKCU). game_installer.exe MUST create this key. --> <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name> <!-- game_installer.exe, specified in <path>, creates the registry value called 'InstallLocation' within SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey by the time it exits. --> <value-name>InstallLocation</value-name> </installation-path-registry-location> </installer> <!-- If requiresElevation is "true", launcher runs as Administrator and a UAC prompt is displayed on every game launch. --> <launcher requiresElevation="true"> <!-- Specifies the registry location where Google Play Games reads the installation path in order to launch the game. --> <launch-path-registry-location > <!-- Registry key path (typically under HKLM or HKCU) where the launch path can be found. --> <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name> <!-- Google Play Games reads the installation directory from this registry value, for example InstallLocation, to launch the game. --> <value-name>InstallLocation</value-name> </launch-path-registry-location> <executable-invocation> <!-- Game executable or launcher filename, relative to the directory path specified in the InstallLocation registry value. --> <filename>launcher.exe</filename> <!-- Optional arguments to pass to the executable. CDATA is used here to avoid issues with special characters like & or >. --> <arguments><![CDATA[arg1&arg2>arg3]]></arguments> </executable-invocation> </launcher> <!-- If requiresElevation is "true", uninstaller runs as Administrator and a UAC prompt is displayed for uninstall. --> <uninstaller requiresElevation="true"> <!-- Registry key where Google Play Games finds the uninstallation command. --> <uninstall-path-registry-location> <!-- Registry key path (typically under HKLM or HKCU) where uninstall command can be found. --> <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey</key-name> <!-- game_installer.exe also creates the registry value, for example, 'UninstallString' within SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MySystemWideUniqueKey, containing the command Google Play Games executes to uninstall the game. --> <value-name>UninstallString</value-name> </uninstall-path-registry-location> </uninstaller> </play-publishing-config>Play yayınlama aracını Windows komut satırında veya PowerShell'de çalıştırın.
playpublishingtool.exe build-installer-bundle --input=PLAY_PUBLISHING_CONFIG_PATH --output=WAB_OUTPUT_PATH
Aynı ada sahip mevcut bir WAB dosyasının üzerine yazmak için
--forcebağımsız değişkenini kullanın.playpublishingtool.exe build-installer-bundle --input=PLAY_PUBLISHING_CONFIG_PATH --output=WAB_OUTPUT_PATH --force
Aşağıdakini değiştirin:
PLAY_PUBLISHING_CONFIG_PATH: Play yayınlama yapılandırmasının yolu. Örneğin,path\to\play_publishing_config.xml.WAB_OUTPUT_PATH: WAB dosyasının yolu. Örneğin,path\to\output_bundle.wab.
Play yayınlama aracını kullanma
Mevcut çalışma dizininde Play yayınlama aracı ikilisi
playpublishingtool.exe, Play yayınlama yapılandırmasıplay_publishing_config.xmlve oyun yükleyicinizingame_installer.exebulunduğunu varsayalım.Mevcut çalışma dizininiz aşağıdaki gibi görünmelidir:
.\ ├── game_installer.exe ├── play_publishing_config.xml ├── playpublishingtool.exe
Aynı dizinde
installer_bundle.wabadlı bir WAB oluşturmak için komut şu şekilde görünür:playpublishingtool.exe build-installer-bundle --input=play_publishing_config.xml --output=installer_bundle.wab
--forcebağımsız değişkeniyle komut şöyle görünür:playpublishingtool.exe build-installer-bundle --input=play_publishing_config.xml --output=installer_bundle.wab --force
İşlem başarılı olduğunda aşağıdakine benzer bir çıkış görürsünüz:
Successfully built the installer bundle at installer_bundle.wab
WAB dosyasını şu klasörde bulun:
.\ ├── game_installer.exe ├── installer_bundle.wab ├── play_publishing_config.xml ├── playpublishingtool.exe
PC'de yerel olarak çalışan oyunlarınız yüklendikten sonra otomatik oynatmayı etkinleştirme (isteğe bağlı)
PC Üzerinde Google Play Games, yükleme işlemi tamamlandıktan hemen sonra oyununuzu otomatik olarak başlatan bir "otomatik oynatma" özelliğini etkinleştirmenize olanak tanır. Bu özellik, oyuncuyu doğrudan oyuna geçirerek ve PC Üzerinde Google Play Games ekosisteminde tam olarak kimliğini doğrulayarak sorunsuz bir kullanıcı deneyimi sağlar.
İşleyiş şekli
Özelliği etkinleştirdiğinizde PC Üzerinde Google Play Games, komut satırı bağımsız değişkenlerini kullanarak üçüncü taraf (3P) yükleyici işleminize bir oturum jetonu iletir. Yükleyiciniz daha sonra bu jetonu ayıklamaktan ve kimliği doğrulanmış bir bağlamda oyunun yürütülebilir dosyasını başlatmak için kullanmaktan sorumludur.
Ön koşullar
Bu özelliği kullanmak için 3. taraf yükleyicinizin komut satırı bağımsız değişkenlerini işleyebilmesi gerekir.
Uygulama adımları
Play yayınlama yapılandırmasında otomatik oynatmayı etkinleştirme
Bu özelliği etkinleştirmek için
play_publishing_config.xmliçindeki<installer>öğesineacceptsCommandLineArgumentsözelliğini ekleyin.play_publishing_config.xmliçeriğinden alıntı örneği:<installer requiresElevation="true" acceptsCommandLineArguments="true"> <path>path/to/installer.exe</path> <installation-path-registry-location> <key-name>SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\key</key-name> <value-name>InstallPath</value-name> </installation-path-registry-location> </installer>
- Özellik:
acceptsCommandLineArguments - Tür:
Boolean - Varsayılan:
false - Davranış: true olarak ayarladığınızda GPG, yükleyicinizi çalıştırırken oturum jetonunu komut satırı bağımsız değişkenlerine ekler.
- Özellik:
Yükleyicinizde Oturum Jetonunu İşleme
Yükleyiciniz GPG istemcisi tarafından başlatıldığında oturum jetonunu komut satırı bağımsız değişkeni olarak alır.
- Bağımsız değişken biçimi:
--g_session_token=<TOKEN>
Yapmanız gerekenler:
- Ayıklama: Yükleyiciniz, jeton dizesini almak için komut satırı bağımsız değişkenlerini ayrıştırmalıdır.
- Yayma: Yükleme akışınızda ikincil bir başlatıcı veya oyun süreci başlatılıyorsa yükleyiciniz, oturum jetonunu SDK'yı kullanan son oyun sürecine güvenli bir şekilde iletmekle sorumludur.
- Başlatma: Oyunun yürütülebilir dosyasını başlatmak için sağlanan oturum jetonunu kullanın. Bu, oyunun kimliği doğrulanmış bir GPG bağlamında çalışmasını sağlar. Aksi takdirde, InitializeSDK başarısız olur ve oynatıcınızın oyununuzu yeniden başlatması gerekir.
- Bağımsız değişken biçimi:
Hata işleme ve yedekler
- Jeton Alma: GPG herhangi bir nedenle oturum jetonu oluşturamaz veya iletemezse (ör. jeton oluşturma hatası) yükleme işlemi yine de devam eder. Ancak yükleyiciniz
--g_session_tokenbağımsız değişkeni olmadan başlatılır. - Sağlamlık: Yükleyiciniz, oturum jetonunun olmadığı senaryoları işleyecek şekilde tasarlanmalıdır. Bu gibi durumlarda yükleyici standart bir yükleme işlemine devam etmelidir. InitializeSDK yine başarısız olacağından otomatik oyun başlatmayı tetiklememelisiniz.
- Yükleyici Hataları: Yükleyicinizin ve başlattığı oyun başlatma sırasının sağlamlığı ve hata işleme süreçleri sizin sorumluluğunuzdadır. GPG, yükleyici başlatıldıktan sonra yükleyicide gerçekleşen süreçler üzerinde kontrol sahibi değildir.
- Jeton Alma: GPG herhangi bir nedenle oturum jetonu oluşturamaz veya iletemezse (ör. jeton oluşturma hatası) yükleme işlemi yine de devam eder. Ancak yükleyiciniz
Play Console'u kullanarak oyunu yayınlama
Oyununuz için WAB'yi başarıyla oluşturduktan sonra Play Console'a yükleyin, ayarlarını ve şartlarını yönetin. Oyununuzu yayınlamak için aşağıdaki adımları uygulayın:
PC Üzerinde Google Play Games form faktörünü ekleme
Bu adım yalnızca bir oyunu ilk kez yayınladığınızda gereklidir.
- Play Console'da soldaki menüden Test etme ve yayınlama > Kurulum > Gelişmiş ayarlar'ı (doğrudan bağlantı) seçin.
Form faktörleri sekmesine gidin ve + Yeni form faktörü ekle açılır listesinden
Google Play Games on PCsimgesini ekleyin.Sağ tarafta PC Üzerinde Google Play Games form faktörüne karşılık gelen Yönet düğmesini tıklayın.
Windows uygulama paketi oyunum için özel kanal kullan seçeneğini belirleyin.
Kaydet'i ve ardından onay iletişim kutusunda tekrar Kaydet'i tıklayın.
Yönetilen yayınlamayı etkinleştirme
Yönetilen yayıncılığı etkinleştirmek için aşağıdaki adımları uygulayın.
- Yayınlamaya Genel Bakış sayfasındaki Yönetilen Yayınlama bölümünde Yönetilen Yayınlamayı Etkinleştir'i tıklayın.
- Bir iletişim kutusu görüntülenir. Kanal için Yönetilen yayınlama etkin'e geçin.
- Kaydet'i tıklayın.
WAB dosyasını yükleyin.
WAB dosyasını yüklemek için aşağıdaki adımları uygulayın:
- Play Console'da soldaki menüden Test etme ve yayınlama > Gelişmiş ayarlar'ı (doğrudan bağlantı) seçin.
- Gelişmiş ayarlar sayfasında Form faktörleri sekmesini tıklayın.
- Form faktörleri sekmesinde + Form faktörü ekle'yi tıklayın ve eklemek için PC Üzerinde Google Play Games'i seçin.
- PC Üzerinde Google Play Games bölümünde Yönet'i tıklayın.
- Windows uygulama paketi oyunum için özel kanal kullan'ı seçin.
- Kaydet'i tıklayın.
- Play Console'da soldaki menüden Test etme ve yayınlama > Üretim'i (doğrudan bağlantı) seçin.
- Üretim sayfasında, form faktörü açılır listesinden Yalnızca PC Üzerinde Google Play Games (Windows)'u seçin.
- Windows uygulama paketi sekmesinde Düzenle'yi tıklayın ve WAB dosyasını yükleyin.
Windows PC gereksinimlerini yapılandırma
Windows PC gereksinimlerini yapılandırmak için:
- Play Console'da soldaki menüden Kullanıcı sayısını artırma > Play Store'daki varlığı > Mağaza ayarları'nı (doğrudan bağlantı) seçin.
- PC gereksinimleri bölümünde, sağ taraftaki Düzenle düğmesini tıklayın.
- Alanları güncelleyin ve Kaydet'i tıklayın.
Uygulama içi satın alma grafiğini yapılandırma
Bu adım isteğe bağlıdır. Uygulama içi satın alma grafiğini yapılandırmak için:
- Play Console'da soldaki menüden Kullanıcı sayısını artırma > Play Store'daki varlığı > Mağaza girişleri'ni(doğrudan bağlantı) seçin.
- Girişler sekmesindeki Varsayılan mağaza girişi bölümünde sağ taraftaki -> (ok) düğmesini tıklayın. Bu işlem sizi varsayılan mağaza girişi sayfasına yönlendirir.
- PC Üzerinde Google Play Games bölümüne gidin ve resmi PC Üzerinde Google Play Games (Windows) uygulama içi satın alma grafiği bölümüne yükleyin.
- Kaydet'i tıklayın.
Değişikliği incelemeye gönderme
- Play Console'da soldaki menüden Yayınlama özeti'ni seçin.
- Henüz incelemeye gönderilmeyen değişiklikler bölümünde Değişiklikleri incelemeye gönder'i tıklayın.
İnceleme ekibi değişikliklerinizi onayladığında oyununuz Google Play'de bulunabilir.