Questa guida fornisce istruzioni dettagliate per integrare l'SDK Google Play Giochi per PC nel tuo progetto Unity.
Passaggio 1: scarica l'SDK
Scarica l'ultima versione del pacchetto Unity utilizzando il link di download.
Download: SDK di Play Giochi per PCUnity
Passaggio 2: importa il pacchetto
L'SDK viene distribuito come file tar compatibile con Unity Package Manager (UPM). Per saperne di più, consulta Installare un pacchetto UPM da un file tar locale
Passaggio 3: configura le impostazioni di build
Per verificare che le librerie native vengano caricate correttamente, devi configurare il progetto in modo che utilizzi il backend di scripting IL2CPP e che sia destinato all'architettura corretta.
Crea un profilo di build con Windows come piattaforma.
Seleziona le impostazioni della piattaforma come Windows. Per l'architettura, utilizza le seguenti opzioni:
- Intel a 64 bit (consigliato)
- Intel a 32 bit
Nota: la piattaforma Google Play Giochi su PC viene eseguita in un ambiente a 64 bit. Puoi creare la build del gioco come a 32 bit (x86) o a 64 bit (x64).
Imposta Backend di scripting su IL2CPP. Per saperne di più, consulta Creare un progetto con IL2CPP.
- Imposta Livello di compatibilità API su .NET Standard 2.0 (o .NET Framework).
Passaggio 4: crea il manifest dell'applicazione
Prima di poter utilizzare l'SDK nel gioco, devi associare il file eseguibile del gioco al nome del pacchetto Play che hai richiesto in Play Console. Per farlo, aggiungi un file manifest.xml nella stessa directory del file eseguibile del gioco.
Nota: questo è un passaggio manuale che deve essere eseguito.
- Per creare il file eseguibile del gioco, seleziona File > Crea ed esegui o premi
Ctrl+B. - Apri un editor di testo e crea un nuovo file denominato
manifest.xml. Copia e incolla il seguente codice XML nel file:
<?xml version="1.0" encoding="utf-8"?> <?Manifest version="1"> <?Application> <?PackageName>com.example.package<?/PackageName> <?/Application> <?/Manifest>
Salva il file come
manifest.xml.Sposta questo file nella stessa cartella del file eseguibile del gioco creato.
Esempio: se il gioco si trova in
Builds/MyGame.exe, il manifest deve trovarsi inBuilds/manifest.xml.
Nota: se vuoi utilizzare l'SDK per PC durante lo sviluppo in Unity Editor senza dover firmare digitalmente il file eseguibile del gioco o avviarlo da Google Play Giochi. Per ulteriori passaggi di configurazione del manifest, consulta la guida alla configurazione della modalità sviluppatore.
Passaggio 5: inizializza l'SDK
Devi inizializzare l'SDK prima di accedere a qualsiasi funzionalità, come Fatturazione o Integrity. Utilizza PlayPcSdkFactory per creare il gestore di inizializzazione e avviare la connessione.
Crea un nuovo script C#, ad esempio SdkInitialization.cs, e aggiungi il seguente codice:
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); } } }
Collega questo script a un GameObject nella prima scena. Quando esegui il gioco, controlla la console per il messaggio "SDK Initialized Successfully!".