Este documento descreve como migrar jogos do SDK para jogos v1 para o SDK para jogos v2. O plug-in do Play Games para Unity, versões 10 e anteriores, usa o SDK v1.
Antes de começar
- Verifique se você já configurou o Play Console e instalou o Unity Hub.
Fazer o download do plug-in do Google Play Games para Unity
Para aproveitar os recursos mais recentes dos Serviços do Play Games, faça o download e instale a versão mais recente do plug-in. Faça o download no repositório do GitHub.
Remover o plug-in antigo
No Unity Hub, remova as pastas ou arquivos a seguir.
Assets/GooglePlayGames Assets/GeneratedLocalRepo/GooglePlayGames Assets/Plugins/Android/GooglePlayGamesManifest.androidlib Assets/Plugins/Android

Importar o novo plug-in para o projeto do Unity
Para importar o plug-in para seu projeto do Unity, siga estas etapas:
- Abra o projeto do jogo.
- No Unity Hub, clique em Assets > Import Package > Custom Package
para importar o arquivo
unitypackage
transferido por download para os recursos do projeto. Confira se a plataforma de build atual está definida como Android.
No menu principal, clique em File > Build Settings.
Selecione Android e clique em Switch Platform.
Um novo item de menu vai aparecer em Window > Google Play Games. Se isso não acontecer, clique em Assets > Refresh para atualizar os recursos e tente definir a plataforma de build novamente.
No Unity Hub, clique em File > Build Settings > Player Settings > Other Settings.
Na caixa Nível da API de destino, selecione uma versão.
Na caixa Scripting backend, digite
IL2CPP
.Na caixa Arquiteturas de destino, selecione um valor.
Anote o nome do pacote package_name.Você poderá usar essas informações mais tarde.
As configurações do player no projeto do Unity.
Atualizar o código de login automático
Substitua a classe de inicialização PlayGamesClientConfiguration
pela
classe PlayGamesPlatform.Instance.Authenticate()
.
A inicialização e a ativação de PlayGamesPlatform
não são necessárias.
Chamar PlayGamesPlatform.Instance.Authenticate()
extrai o resultado do
login automático.
C#
No Unity Hub, localize os arquivos com a
classe PlayGamesClientConfiguration
.
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using UnityEngine.SocialPlatforms;
public void Start() {
PlayGamesClientConfiguration config =
new PlayGamesClientConfiguration.Builder()
// Enables saving game progress
.EnableSavedGames()
// Requests the email address of the player be available
// will bring up a prompt for consent
.RequestEmail()
// Requests a server auth code be generated so it can be passed to an
// associated backend server application and exchanged for an OAuth token
.RequestServerAuthCode(false)
// Requests an ID token be generated. This OAuth token can be used to
// identify the player to other services such as Firebase.
.RequestIdToken()
.Build();
PlayGamesPlatform.InitializeInstance(config);
// recommended for debugging:
PlayGamesPlatform.DebugLogEnabled = true;
// Activate the Google Play Games platform
PlayGamesPlatform.Activate();
}
E atualize para o seguinte:
using GooglePlayGames;
public void Start() {
PlayGamesPlatform.Instance.Authenticate(ProcessAuthentication);
}
internal void ProcessAuthentication(SignInStatus status) {
if (status == SignInStatus.Success) {
// Continue with Play Games Services
} else {
// Disable your integration with Play Games Services or show a login
// button to ask users to sign-in. Clicking it should call
// PlayGamesPlatform.Instance.ManuallyAuthenticate(ProcessAuthentication).
}
}
Escolher uma plataforma social
Para escolher uma plataforma social, consulte escolher uma plataforma social.
Extrair códigos de autenticação do servidor
Para receber códigos de acesso do lado do servidor, consulte extrair códigos de autenticação do servidor.
Remover código de desativação
Remova o código para sair. Os serviços relacionados a jogos do Google Play não exigem mais um botão de saída no jogo.
Remova o código mostrado no exemplo abaixo:
C#
// sign out
PlayGamesPlatform.Instance.SignOut();
Testar o jogo
Teste o jogo para garantir que ele funcione conforme o esperado. Os testes que você realiza dependem dos recursos do jogo.
Confira a seguir uma lista de testes comuns a serem executados.
Login concluído.
O login automático funciona. O usuário precisa estar conectado aos Serviços relacionados a jogos do Google Play ao iniciar o jogo.
O pop-up de boas-vindas é exibido.
Exemplo de pop-up de boas-vindas (clique para ampliar). As mensagens de registro bem-sucedidas são exibidas. Execute o seguinte comando no terminal:
adb logcat | grep com.google.android.
Uma mensagem de registro bem-sucedida é mostrada no exemplo a seguir:
[
$PlaylogGamesSignInAction$SignInPerformerSource@e1cdecc number=1 name=GAMES_SERVICE_BROKER>], returning true for shouldShowWelcomePopup. [CONTEXT service_id=1 ]
Garantir a consistência dos componentes da interface.
Pop-ups, placares e conquistas são exibidos corretamente e de forma consistente em vários tamanhos e orientações de tela na interface do usuário (IU) dos serviços relacionados a jogos do Google Play.
A opção de encerramento de sessão não aparece na interface dos Serviços relacionados a jogos do Google Play.
Verifique se você consegue recuperar o ID do jogador e, se aplicável, se os recursos do lado do servidor funcionam conforme o esperado.
Se o jogo usa autenticação do lado do servidor, teste completamente o fluxo
requestServerSideAccess
. Verifique se o servidor recebe o código de autenticação e pode trocá-lo por um token de acesso. Teste cenários de sucesso e de falha para erros de rede e cenários inválidos declient ID
.
Se o jogo usava algum dos recursos abaixo, teste-os para garantir que eles funcionem da mesma forma que antes da migração:
- Placares: envie pontuações e confira os placares. Verifique se a classificação e a exibição dos nomes e pontuações dos jogadores estão corretas.
- Conquistas: desbloqueie conquistas e verifique se elas são gravadas e exibidas corretamente na interface do Google Play Games.
- Jogos salvos: se o jogo usa jogos salvos, verifique se o salvamento e o carregamento do progresso do jogo funcionam perfeitamente. Isso é especialmente importante para testar em vários dispositivos e após atualizações do app.
Tarefas pós-migração
Conclua as etapas a seguir depois de migrar para o SDK v2 de jogos.