O login dos serviços relacionados a jogos do Google Play fornece uma forma de acessar a identidade de um jogador, que é específica para jogadores Android no nível da plataforma. Essa identidade ajuda a criar uma relação entre jogo e jogador. Os jogadores estão mais dispostos a usar essa identidade para fazer login do que sistemas centralizados alternativos.
Além disso, o login é um identificador forte e consistente que pode ser usado como chave para um sistema de salvamento na nuvem. Com ele, os jogadores podem:
- Continuar de onde pararam se mudarem ou redefinirem o dispositivo para a configuração original
- Jogar em vários dispositivos, como outro smartphone ou um Chromebook
- Desinstalar e reinstalar o jogo
É possível usar a identidade dos serviços relacionados a jogos do Google Play como chave para sua própria solução de salvamento na nuvem ou ainda usar o serviço de Jogos salvos.
Os Serviços relacionados a jogos do Google Play (PGS) oferecem suporte ao login automático, uma maneira sem atrito de fazer login dos jogadores, bem como o login manual, que é um processo de um clique. Este documento descreve esses diferentes métodos de login.
Fluxo de login recomendado
Para fazer login dos jogadores, use o fluxo de login abaixo:
- Durante a sequência de inicialização do jogo, tente usar o Login automático para fazer o login do jogador automaticamente.
- Se o login automático não funcionar e o dispositivo do usuário estiver on-line, tente o Login manual.
- Se o login manual for recusado, lembre-se da escolha do usuário e não mostre o login manual novamente, mas continue tentando o login automático na inicialização.
Além disso, você precisa garantir que os usuários consigam fazer login no jogo usando a conta dos serviços relacionados a jogos do Google Play, com um botão dedicado e fácil de encontrar.
Login automático
O login automático permite que os usuários façam login no jogo sem nenhuma dificuldade. É automático! Se o jogo solicitar que o usuário faça login e a configuração de login automático estiver ativada (no app Google Play Games), você vai receber as credenciais de identidade do PGS, e o usuário vai passar pela experiência de login do PGS.
O login automático é uma configuração que pode ser controlada pelo usuário. Ele pode decidir fazer login automaticamente em todos os jogos ou fazer a escolha toda vez.
Login manual
Se um usuário não fizer login automaticamente no jogo, peça para ele fazer login manualmente. Os usuários podem fazer login com um clique em uma caixa de diálogo exibida na parte superior do jogo.
Permitir pop-ups do PGS para a experiência de login correta
Ao usar esses serviços, os usuários precisam saber que estão conectados. Isso é feito mostrando a experiência de login do PGS.
Para mostrar a experiência de login, chame o método
setViewForPopups()
da classe GamesClient
durante a inicialização do jogo. Isso é fundamental para
permitir a experiência correta do usuário.
Escopos do OAuth e PGS
Os serviços relacionados a jogos do Google Play dependem do sistema OAuth para permitir que os usuários concedam acesso do jogo à conta deles. Os escopos do OAuth são permissões que você, como desenvolvedor, pode solicitar. Se concedidas, essas permissões permitem que seu jogo chame determinadas APIs em nome do usuário e também concedem acesso a partes da Conta do Google.
O PGS tem um escopo exclusivo para jogos (games-lite
) e depende de outro escopo
(drive.appdata
) caso seu jogo use o recurso de Jogos salvos. O recurso de Jogos salvos
dá acesso à conta do Google Drive do usuário, em que os dados do jogo são
armazenados.
Seu jogo pode solicitar qualquer escopo necessário para criar uma ótima experiência para os usuários. Seu jogo pode solicitar todos os escopos necessários em um pacote, limitando o número de solicitações de acesso à Conta do Google. No entanto, essa abordagem tem uma grande desvantagem. Se você solicitar mais do que os escopos específicos do PGS, o login automático não vai ser bem-sucedido. O login automático é a melhor maneira de fazer os jogadores entrarem no jogo.
A prática recomendada é usar solicitações de escopo incremental. O jogo precisa pedir os escopos somente para PGS primeiro na solicitação inicial e solicitar outros escopos separadamente em um momento mais relevante.
O acesso OAuth é concedido usando uma tela diferente para cada escopo. Isso permite que os usuários decidam, de maneira granular, a quais escopos conceder acesso. Ao usar o login automático apenas com escopos do PGS, os usuários não precisarão interagir com nenhuma solicitação do OAuth, reduzindo o atrito no login.
Suporte a vários métodos de login
O PGS oferece uma identidade de jogo para jogadores do Android, mas essa não precisa ser a única identidade conectada aos usuários. Você pode fazer o login dos jogadores usando o PGS, um ID de rede social e seu próprio sistema de IDs no jogo ao mesmo tempo. Cada sistema oferece um valor exclusivo para você e os jogadores, e todos podem trabalhar juntos para criar uma ótima experiência para os jogadores do Android.
Extrair e verificar com segurança a identidade do jogador para integração com back-end
Você pode solicitar um código de autenticação do servidor para permitir a comunicação direta com os serviços relacionados a jogos do Google Play usando a API REST com a autoridade do jogador conectado. Isso permite o acesso direto ao ID, perfil e outras informações do jogador, como uma lista de amigos, se autorizado. Se você armazenar IDs de jogador, amigos ou outros dados relacionados no back-end, esse método vai precisar ser usado para remover a possibilidade de manipulação desses campos do lado do dispositivo.
Além disso, para alguns jogos e jogadores mais antigos, o ID do jogador retornado pelo
SDK do Android pode não ser o mesmo que os outros veem ao
encontrar o jogador no jogo. Isso é muito relevante ao usar
a lista de amigos. No entanto, o player_id
retornado na API REST é
sempre consistente e é sempre o ID mostrado a outros jogadores.
Para mais informações, consulte Acesso off-line e a documentação da API REST.
Implementação do cliente
Para aprender a implementar o suporte a login no Android, consulte Login em jogos do Android.