Richiamo dei servizi per i giochi di Play

Consente agli utenti di accedere facilmente al tuo gioco continuando a utilizzare il tuo sistema di account. Con le API Recall di Play Games Services puoi collegare gli account in-game a un account Google Play Games Services. In questo modo, quando un utente gioca al tuo gioco su dispositivi diversi (o sullo stesso dispositivo dopo aver reinstallato il gioco), esegui una query sull'account di gioco collegato e semplifichi il flusso di accesso.

Se hai eseguito l'integrazione con le API Android Recall, queste API Recall dovrebbero esserti familiari. Tutte le integrazioni lato server con il richiamo dei servizi per i giochi di Play possono essere riutilizzate dai titoli per PC, in quanto sono le stesse su Android e PC.

Spazio dei nomi: PlayPcSdkManaged.Recall

Client Class: RecallClient

Prerequisiti

Aggiungi l'ID progetto Play Games Services nel manifest

Dopo aver completato la configurazione di Play Games Services in Play Console, il tuo gioco ora ha un ID progetto Play Games Services associato. Utilizzando questo ID progetto, che si trova nella pagina di configurazione dei servizi per i giochi di Play Console, aggiorna il file manifest.xml del tuo gioco.

Contenuti di esempio 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 fabbrica per creare un RecallClient. In questo modo, le callback sicure per Unity vengono registrate 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();
    }
}

Richiedere l'accesso a Recall

Quando il gioco gestisce un flusso 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 tuo backend per effettuare chiamate lato server a Google per collegare e scollegare i tuoi account in-game con un utente dei servizi per i giochi di Play.

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 richiamo

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 Giochi per:

Per una guida più dettagliata che illustra l'integrazione lato server, consulta la documentazione che spiega come utilizzare l'API Recall nel server di gioco.