Faça login dos usuários no seu jogo sem problemas e continue usando seu próprio sistema de contas. Com as APIs Recall dos serviços do Google Play Games, é possível vincular contas no jogo a uma conta dos serviços do Google Play Games. Depois, quando um usuário joga em dispositivos diferentes (ou no mesmo dispositivo após reinstalar o jogo), você consulta a conta vinculada no jogo e simplifica o fluxo de login.
Se você fez a integração com as APIs do Android Recall, elas serão familiares. Todas as integrações do lado do servidor com a Recuperação dos Serviços relacionados a jogos do Google Play podem ser reutilizadas por títulos de PC, já que são as mesmas no Android e no PC.
Namespace:PlayPcSdkManaged.Recall
Classe de cliente:RecallClient
Pré-requisitos
Leia a visão geral da API Recall dos serviços do Google Play Games.
Conclua a configuração dos serviços do Google Play Games no Play Console.
Adicionar o ID do projeto dos serviços do Google Play Games no manifesto
Depois de concluir a configuração dos serviços do Google Play Games no Play Console, seu jogo
agora tem um ID de projeto associado. Usando esse ID do projeto, que pode ser encontrado na página de configuração dos serviços do Google Play Games no Play Console, atualize o manifest.xml do jogo.
Exemplo de conteúdo 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>
Observação:se você quiser usar o SDK para PC ao desenvolver no Unity Editor sem precisar assinar digitalmente o executável do jogo ou iniciá-lo no Google Play Games. Para mais etapas de configuração do manifesto, consulte o guia de configuração do modo de desenvolvedor.
Criar o cliente
Sempre use a fábrica para criar um RecallClient. Isso garante que os callbacks seguros para Unity sejam registrados 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(); } }
Solicitar acesso ao Recall
Quando o jogo estiver processando um fluxo de login, por exemplo, adicionando uma conta
no jogo, solicite acesso ao Recall usando
RequestRecallAccessAsync.
Essa chamada retorna um ID de sessão usado pelo back-end para fazer chamadas do lado do servidor ao Google para vincular e desvincular suas contas no jogo com um usuário dos serviços do Google Play Games.
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); } }
Processar o ID da sessão de recall
Depois que o jogo tiver o ID da sessão do Recall e o tiver transmitido para o servidor de jogos de back-end, use as APIs REST do lado do servidor do Play Games para:
- Consultar contas vinculadas no jogo usando
recall.retrieveTokens - Adicione ou atualize as contas vinculadas no jogo usando
recall.linkPersona - Excluir contas vinculadas no jogo usando
recall.unlinkPersona
Para um guia mais detalhado sobre a integração do lado do servidor, consulte a documentação sobre como usar a API Recall no servidor do jogo.