Richiamo dei servizi per i giochi di Play

Consenti agli utenti di accedere facilmente al tuo gioco continuando a utilizzare il tuo sistema di account. Con le API Recall di Google Play Games Services puoi collegare gli account di gioco a un account Google Play Games Services. Quando un utente gioca al tuo gioco su dispositivi diversi (o sullo stesso dispositivo dopo averlo reinstallato), puoi eseguire una query sull'account di gioco collegato e semplificare la procedura di accesso.

Se hai eseguito l'integrazione con le API Recall di Android, queste API ti risulteranno familiari. Tutte le integrazioni lato server con Recall di Play Games Services possono essere riutilizzate dai titoli per PC, poiché sono le stesse sia su Android sia su PC.

Spazio dei nomi: PlayPcSdkManaged.Recall

Classe client: RecallClient

Prerequisiti

Aggiungi l'ID progetto di Play Games Services nel manifest

Dopo aver completato la configurazione di Play Games Services in Play Console, il tuo gioco ha ora un ID progetto di Play Games Services associato. Utilizza questo ID progetto, che si trova nella pagina Configurazione di Play Games Services in Play Console, per aggiornare il file manifest.xml del gioco.

Esempio di contenuti di manifest.xml:

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

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.

Crea il client

Utilizza sempre la factory per creare un RecallClient. In questo modo, i callback sicuri per Unity vengono registrati automaticamente.

using UnityEngine;
using System;
using System.Threading.Tasks;
// Required SDK Namespaces
using PlayPcSdkManaged.Recall;
using PlayPcSdkManaged.Unity;

public class RecallManager : MonoBehaviour
{
    private RecallClient _recallClient;

    public void SetupRecall()
    {
        try
        {
            // Creates the client with the required UnityRecallCallbacksHandler
            _recallClient = PlayPcSdkFactory.CreateRecallClient();
            Debug.Log("Recall Client created successfully.");
        }
        catch (Exception ex)
        {
            Debug.LogError($"Failed to create Recall Client: {ex.Message}");
        }
    }

    private void OnDestroy()
    {
        // Always dispose of the client to clean up native C++ resources
        _recallClient?.Dispose();
    }
}

Richiedi l'accesso a Recall

Quando il gioco gestisce una procedura di accesso, ad esempio l'aggiunta di un account di gioco, richiedi l'accesso a Recall utilizzando RequestRecallAccessAsync.

Questa chiamata restituisce un ID sessione utilizzato dal backend per effettuare chiamate lato server a Google per collegare e scollegare gli account di gioco a un utente di Play Games Services.

public async Task RequestRecallAccessAsync()
{
    try
    {
        Debug.Log("Requesting Recall access...");

        // Async call to retrieve the session ID
        var result = await _recallClient.RequestRecallAccessAsync();

        if (result.IsOk)
        {
            // On success, access the RecallSessionId
            var sessionId = result.Value.RecallSessionId;
            Debug.Log($"Recall Access Granted! Session ID: {sessionId}");

            // Pass 'sessionId' to your backend server to process account linking
        }
        else
        {
            // Handle expected API errors (e.g., Error)
            Debug.LogError($"Request Failed: {result.Code} - {result.ErrorMessage}");
        }
    }
    catch (Exception ex)
    {
        Debug.LogException(ex);
    }
}

Elabora l'ID sessione di Recall

Una volta che il gioco ha l'ID sessione di Recall e lo ha passato al server di gioco di backend, utilizza le API REST lato server di Play Games per:

Per una guida più dettagliata sull'integrazione lato server, consulta la documentazione su come utilizzare l'API Recall all'interno del server di gioco.