progetto, che illustra i passaggi dal download dell'SDK all'inizializzazione e alla configurazione della build. keywords_public: Google Play Games PC, Unity, integrazione SDK, PC nativo, sviluppo di giochi, IL2CPP, manifest, SDK Unity di Play Games PC
Questa guida fornisce istruzioni passo passo per integrare l'SDK per PC di Google Play Games nel tuo progetto Unity.
Passaggio 1: scarica l'SDK
Scarica l'ultima versione del pacchetto Unity utilizzando il link di download.
Download: SDK Play Games PC Unity
Passaggio 2: importa il pacchetto
L'SDK viene distribuito come file tar compatibile con Unity Package Manager (UPM). Per ulteriori informazioni, vedi 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 abbia come target l'architettura corretta.
Crea un profilo di build con Windows come piattaforma.
Seleziona le impostazioni della piattaforma come Windows. Per l'architettura, utilizza le 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 il tuo gioco a 32 bit (x86) o 64 bit (x64).
Imposta Scripting Backend su IL2CPP. Per saperne di più, consulta la pagina 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 tuo gioco, devi associare l'eseguibile del gioco
al nome del pacchetto Play che hai rivendicato in
Play Console. Per farlo, aggiungi un file manifest.xml nella stessa directory dell'eseguibile del gioco.
Nota:questo è un passaggio manuale che deve essere eseguito.
- Per creare il file eseguibile del gioco, seleziona File > Build and
Run o fai clic su
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 l'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 la fatturazione o l'integrità. 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 visualizzare il messaggio "SDK inizializzato correttamente".
Passaggio 6: attivazione della riproduzione automatica dopo l'installazione dei giochi nativi per PC
Google Play Games su PC (GPG) consente agli sviluppatori di attivare una funzionalità di "riproduzione automatica", che avvia automaticamente il gioco immediatamente dopo il completamento del processo di installazione. Questa funzionalità consente un'esperienza utente senza interruzioni, in quanto il giocatore passa direttamente al gioco, con autenticazione completa all'interno dell'ecosistema GPG.
Come funziona
Quando attivi la funzionalità, GPG passa un token di sessione GPG al processo di installazione di terze parti tramite argomenti della riga di comando. Il programma di installazione è quindi responsabile dell'estrazione di questo token e del suo utilizzo per avviare l'eseguibile del gioco in un contesto autenticato.
Prerequisiti
Per utilizzare questa funzionalità, il programma di installazione di terze parti deve essere in grado di gestire gli argomenti della riga di comando.
Procedura di implementazione
Attivare la riproduzione automatica nella configurazione di pubblicazione
Per attivare questa funzionalità, aggiungi l'attributo
acceptsCommandLineArgumentsall'elemento<installer>nelplay_publishing_config.xml.Contenuti di esempio di
manifest.xml:<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>- Attributo:
acceptsCommandLineArguments - Tipo:
Boolean - Valore predefinito:
false - Comportamento: se lo imposti su true, GPG aggiungerà il token di sessione agli argomenti della riga di comando durante l'esecuzione del programma di installazione.
- Attributo:
Gestire il token sessione nel programma di installazione
Quando il programma di installazione viene avviato dal client GPG, riceve il token di sessione come argomento della riga di comando.
- Formato dell'argomento:
--g_session_token=<TOKEN>
Cosa devi fare:
- Estrazione: il programma di installazione deve analizzare gli argomenti della riga di comando per recuperare la stringa del token.
- Propagazione: se il flusso di installazione prevede l'avvio di un processo secondario di avvio app o di gioco, il programma di installazione è responsabile del passaggio sicuro del token di sessione al processo di gioco finale che utilizza l'SDK.
- Avvia: utilizza il token di sessione fornito per avviare l'eseguibile del gioco. In questo modo il gioco viene eseguito in un contesto GPG autenticato. Altrimenti, InitializeSDK non andrà a buon fine e il giocatore dovrà riavviare la partita.
- Formato dell'argomento:
Gestione degli errori e fallback
- Recupero del token: se, per qualsiasi motivo, GPG non riesce a generare o trasmettere un token di sessione (ad es. errore di generazione del token), la procedura di installazione continuerà comunque. Tuttavia, il programma di installazione verrà avviato senza l'argomento --g_session_token.
- Robustezza: il programma di installazione deve essere progettato per gestire scenari in cui il token di sessione è assente. In questi casi, il programma di installazione deve procedere con un'installazione standard; non devi attivare l'avvio automatico del gioco perché InitializeSDK non andrà a buon fine.
- Errori del programma di installazione: sei responsabile della robustezza e della gestione degli errori del programma di installazione e della sequenza di avvio del gioco che avvia. GPG non ha controllo sui processi che si verificano all'interno del programma di installazione dopo l'avvio.