Play Games PC SDK'sını kullanarak oyununuzu güçlendirin

Play Games PC SDK ile Google Play hizmetlerine erişerek oyununuzu PC'lerde oluşturabilir ve para kazanabilirsiniz. Play Faturalandırma'yı kullanarak dijital içerik satabilir, Play Games ile sorunsuz bir şekilde oturum açabilir ve Play Integrity ile kullanıcılarınızın uygulamanız için geçerli bir yetkiye sahip olmasını sağlayabilirsiniz.

Başlamaya hazır mısınız?

Ön koşullar

  • Play Console'da bir uygulama girişi oluşturun ve Play paket adı talep edin.

  • PC için Google Play Games'i indirip yükleyin ve Google Hesabınızla oturum açın.

1. adım: SDK'yı projenize ekleyin

  • Play Games PC C++ SDK'sını indirin.

  • API başlıkları klasörünü includes/ uygulamanızın kod tabanına kopyalayın.

  • Yeniden dağıtılabilir dosyaları imports/ konumundan uygulamanızın projesine kopyalayın.

    • Projenizi play_pc_sdk.lib ile bağlayarak play_pc_sdk.dll içeriğine erişime izin verin.

2. adım: Manifest dosyası ekleyin

SDK'yı oyununuzda kullanabilmeniz için öncelikle oyununuzun yürütülebilir dosyasını Play Console'da hak talebinde bulunduğunuz Play paket adıyla ilişkilendirmeniz gerekir. Bu işlem, oyununuzun yürütülebilir dosyasıyla aynı dizine bir manifest.xml dosyası eklenerek yapılır.

Örnek manifest.xml içerikleri:

<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
    <Application>
        <PackageName>com.example.package</PackageName>
    </Application>
</Manifest>

Örnek manifest.xml yerleşimi:

C:\Program Files
└───Example Game
    ├───Game.exe
    └───manifest.xml

3. adım: Oyununuzu dijital olarak imzalayın

Oyununuzun SDK'yı kullanabilmesi için oyunun yürütülebilir dosyasının Authenticode dijital imzası kullanılarak dijital olarak imzalanması gerekir. Yürütülebilir dosyaların nasıl imzalanacağıyla ilgili talimatlar için SignTool ile ilgili dokümanlara bakın .

4. adım: SDK'yı başlatın

SDK'yı oyununuzun başlangıç sırası sırasında başlatın. Bu işlem, herhangi bir kullanıcı etkileşimi gerektirmeden otomatik olarak yapılmalıdır ve oyun pencerenizi oluşturmadan önce başarılı bir başlatma işlemini doğrulamanız önerilir. Bu, hataları mümkün olan en kısa sürede ortaya çıkarıp çözerek en iyi kullanıcı deneyimini sağlar ve oyun işleminizin çıkması gerektiği durumlarda oyun pencerenizin kısa süreliğine görünmesini önler.

API'yi başlatmak için GooglePlayInitialize işlevini çağırarak SDK'yı kullanmaya başlayın. Bu işlem, genel durumu ayarlayacak, SDK çalışma zamanına bağlanacak ve uygulamanın doğru şekilde başlatıldığını doğrulayacaktır. Bu işlev MUTLAKA çağrılmalı ve diğer API'ler kullanılmadan önce devam ettirme geri çağırma işlevi InitializeResult::ok() ile true eşit olacak şekilde tamamlanmalıdır.

// Initialize the SDK as part of the startup sequence of your application.
auto promise = std::make_shared<std::promise<InitializeResult>>();
GooglePlayInitialize(
  [promise](InitializeResult result) {
    promise->set_value(std::move(result));
  });

auto initialize_result = promise->get_future().get();
if (initialize_result.ok()) {
  // The SDK succeeded with initialization. Continue with the startup sequence
  // of the game.
  // ...
} else if (initialize_result.code() == InitializationError::kActionRequiredShutdownClientProcess) {
  // The SDK failed to initialize and has requested that your game process exit
  // as soon as possible.
  exit(1);
} else {
  // The SDK failed to initialize for an alternative reason. It is still
  // generally recommended that you exit the game process as soon as possible,
  // because it won't be possible to access any APIs in the SDK. Critical
  // operations such as verifying the user owns a valid license to your game
  // won't be possible.
  // ...
}

Başlatma işlemi kActionRequiredShutdownClientProcess koduyla başarısız olursa kActionRequiredShutdownClientProcess oyun sürecinden mümkün olan en kısa sürede çıkın. SDK'nın çalışma zamanı, oyununuzun ek bir işlem yapmasına gerek kalmadan kullanıcıya yardımcı olmaya çalışır. Örneğin, kullanıcının oyun için geçerli bir lisansı yoksa Google Play Games, kullanıcıdan bir kopya satın almasını ister. Diğer hatalar için, SDK'yı kullanıcının oyununuz için geçerli bir lisansa sahip olduğunu doğrulama gibi kritik işlemleri gerçekleştirmek üzere kullanmayacağınızdan oyun sürecinden mümkün olan en kısa sürede çıkmanız önerilir.

Başarısız bir yanıt, aşağıdaki koşullardan birini gösterebilir:

  • SDK çalışma zamanı yüklü değil, cihazda çalışmıyor veya oyununuza entegre edilen SDK ile uyumlu olmayan eski bir sürüm.

  • SDK çalışma zamanı, oyunun uygulama kimliğini doğrulayamadı. Bunun nedeni, geçersiz bir manifest.xml veya geliştirme sırasında geliştirici modunu etkinleştirmeden SDK'yı kullanmak olabilir. Bu olmadan oyununuzun yürütülebilir dosyasının, Play paket adınıza kayıtlı dijital sertifikayla dijital olarak imzalanması gerekir.

  • Oyunun yürütülebilir dosyası, Google Play Games istemcisi üzerinden başlatılmamıştır.

  • Google Play Games'deki etkin kullanıcının uygulama için lisansı yok.

5. adım: (İsteğe bağlı) Birden fazla oyun sürecini destekleme

Oyununuz birden fazla işlem kullanıyorsa ve Play Games PC SDK'sını PC Üzerinde Google Play Games tarafından doğrudan başlatılmayan bir işlemden kullanmayı planlıyorsa ek entegrasyon adımları gerekir:

  1. Doğrudan PC Üzerinde Google Play Games tarafından başlatılan işlem, Play Games PC SDK'sının başarılı bir şekilde başlatıldığını doğrulamalıdır.

    Bu sayede hatalar mümkün olan en kısa sürede gösterilerek en iyi kullanıcı deneyimi sağlanır. SDK'yı kullanan alt işlemin, doğrudan başlatılan işleme ek olarak başlatma işlemini de gerçekleştirmesi gerektiğini unutmayın.

  2. Play Games PC SDK'yı alt süreçte kullanmak için komut satırı parametrelerini oluşturulan alt sürece iletin.

    Örnek komut satırı parametresi yönlendirme:

    Processes hierarchy tree:
    
    GooglePlayGames.exe
    └───YourGameLauncher.exe --foo=abc --bar=123
        └───YourGame.exe --foo=abc --bar=123
    

    Bu örnekte, PC için Google Play Games'in (GooglePlayGames.exe) oyunu (YourGameLauncher.exe) bazı örnek parametrelerle (--foo=abc --bar=123) başlattığı bir süreç hiyerarşisi görüyoruz. Oyun daha sonra Play Games PC SDK'sını kullanan bir alt süreç (YourGame.exe) oluşturuyor. Buna izin vermek için PC Üzerinde Google Play Games tarafından başlatılan oyun süreci, kendisine verilen komut satırı parametrelerini alt sürece iletir.

  3. Oyun çalışmayı durdurduğunda tüm işlemlerden çıkın.

    Bir kullanıcı oyununuzu kapattığında veya oyun, kActionRequiredShutdownClientProcess gibi bir SDK başlatma hatası nedeniyle çıktığında oyununuzun oluşturduğu tüm işlemleri kapatın. Bu sayede, oyununuz bir sonraki sefer PC için Google Play Games istemcisi tarafından başlatıldığında farklı bir etkin hesaba geçme gibi yeni değişiklikler geçerli olur.

Sonraki adımlar

IDE'nizde geliştirme yaparken SDK'yı kullanın:

Uygulamanıza Google Play PC özellikleri ekleme: