Bu kılavuzda, Google Play Games PC SDK'sını Unity projenize entegre etme ile ilgili adım adım talimatlar verilmektedir.
1. adım: SDK'yı indirin
İndirme bağlantısını kullanarak Unity Paketinin en son sürümünü indirin.
İndirin: Play Games PC Unity SDK'sı
2. adım: Paketi içe aktarın
SDK, Unity Package Manager (UPM) ile uyumlu bir tar dosyası olarak dağıtılır. Daha fazla bilgi için Yerel bir tar dosyasından UPM paketi yükleme başlıklı makaleyi inceleyin.
3. adım: Derleme ayarlarını yapılandırın
Yerel kitaplıkların doğru şekilde yüklendiğini doğrulamak için projenizi IL2CPP komut dosyası oluşturma arka ucunu kullanacak ve doğru mimariyi hedefleyecek şekilde yapılandırmanız gerekir.
Platform olarak Windows'u kullanarak derleme profili oluşturun.
Platform ayarlarını Windows olarak seçin. Mimari için şu seçenekleri kullanın:
- Intel 64 bit (Önerilen)
- Intel 32 bit
Not: PC Üzerinde Google Play Games platformu 64 bitlik bir ortamda çalışır. Oyununuzu 32 bit (x86) veya 64 bit (x64) olarak oluşturabilirsiniz.
Scripting Backend'i IL2CPP olarak ayarlayın. Daha fazla bilgi için IL2CPP ile proje oluşturma başlıklı makaleyi inceleyin.
- Api Compatibility Level'ı .NET Standard 2.0 (veya .NET Framework) olarak ayarlayın.
4. adım: Uygulama manifestini oluşturun
SDK'yı oyununuzda kullanabilmek için oyununuzun yürütülebilir dosyasını Play Console'da hak talebinde bulunduğunuz Play paket adıyla ilişkilendirmeniz gerekir. Bunu, oyununuzun yürütülebilir dosyasıyla aynı dizine bir manifest.xml dosyası ekleyerek yaparsınız.
Not: Bu, yapılması gereken manuel bir adımdır.
- Oyununuzun yürütülebilir dosyasını oluşturmak için File > Build and Run'ı (Dosya > Oluştur ve Çalıştır) seçin veya
Ctrl+Bsimgesini tıklayın. - Bir metin düzenleyici açın ve
manifest.xmladlı yeni bir dosya oluşturun. Aşağıdaki XML kodunu kopyalayıp dosyaya yapıştırın:
<?xml version="1.0" encoding="utf-8"?> <?Manifest version="1"> <?Application> <?PackageName>com.example.package<?/PackageName> <?/Application> <?/Manifest>
Dosyayı
manifest.xmlolarak kaydedin.Bu dosyayı, oluşturduğunuz oyunun yürütülebilir dosyasıyla aynı klasöre taşıyın.
Örnek: Oyununuz
Builds/MyGame.exeadresindeyse manifestBuilds/manifest.xmladresinde olmalıdır.
5. adım: SDK'yı başlatın
Faturalandırma veya bütünlük gibi özelliklere erişmeden önce SDK'yı başlatmanız gerekir. Başlatma işleyicisini oluşturmak ve bağlantıyı başlatmak için PlayPcSdkFactory öğesini kullanın.
Yeni bir C# komut dosyası oluşturun (örneğin, SdkInitialization.cs) ve aşağıdaki kodu ekleyin:
using UnityEngine; using System; using System.Threading.Tasks; // Import the SDK namespaces using PlayPcSdkManaged.Initialization; using PlayPcSdkManaged.Unity; public class GooglePlayPCSDKInit : MonoBehaviour { // Prevent double-initialization if this script is reloaded private static bool _isInitialized = false; private void Start() { // Use the "Safe Runner" pattern to fire the async method _ = InitializeSdkAsync(); } private async Task InitializeSdkAsync() { if (_isInitialized) { Debug.LogWarning("Google Play PC SDK is already initialized. Skipping."); return; } try { Debug.Log("Initializing Google Play PC SDK..."); // 1. Get the Unity-specific initialization handler from the factory var initHandler = PlayPcSdkFactory.InitializationHandler; // 2. Call InitializeAsync to start the connection var result = await GooglePlayInitialization.InitializeAsync(initHandler); // 3. Check the result if (result.IsOk) { _isInitialized = true; Debug.Log("<color=green>Google Play PC SDK Initialized Successfully!</color>"); // You can now create BillingClient or IntegrityClient instances } else { Debug.LogError($"<color=red>Initialization Failed!</color>"); Debug.LogError($"Error Code: {result.Code}"); Debug.LogError($"Message: {result.ErrorMessage}"); } } catch (Exception ex) { // Catch unexpected crashes or task failures Debug.LogError($"Exception during initialization: {ex.Message}"); Debug.LogException(ex); } } }
Bu komut dosyasını ilk sahnenizdeki bir GameObject'e ekleyin. Oyunu çalıştırdığınızda Console'da "SDK Initialized Successfully!" (SDK başarıyla başlatıldı) mesajını kontrol edin.