Perguntas frequentes

Este documento responde a perguntas comuns sobre SDKs e publicação para o Google Play Games no PC.

Monetização

  1. Posso usar o fluxo de compra sem um servidor de back-end?

    Do ponto de vista da segurança, o Google recomenda o uso de um servidor de back-end.

    Para mais informações, consulte Processar sem um servidor de back-end.

  2. Os sistemas de pagamento baseados em API atuais são permitidos após a integração do SDK do Google Play Games no PC?

    Todos os pagamentos precisam ser processados pelo SDK do Google Play Games no PC usando o Google Play Faturamento. Não é possível usar sua forma de pagamento baseada em API atual no mesmo jogo.

  3. Como podemos consumir compras no modo de desenvolvedor?

    Consuma a compra no modo de desenvolvedor em até três minutos. Caso contrário, ela será reembolsada.

  4. Há suporte para pagamentos recorrentes ou assinaturas?

    Não no futuro imediato, mas você pode fornecer casos de uso específicos para que possamos adicionar ao nosso roteiro futuro.

  5. O que é o erro de faturamento nas minhas chamadas de compra?

    BillingError é a resposta do resultado do pagamento. LaunchPurchaseFlow será retornado imediatamente sem bloqueio, mas você precisa ouvir o callback para saber quando ele terminou e capturar o resultado.

  6. Como posso usar a verificação de compra do lado do cliente?

    Recomendamos o uso da compra do lado do servidor e do processo de verificação. Para processar compras no app cliente, o jogo precisa estar em uma lista de permissões. Entre em contato com seu parceiro do Google se o jogo precisar de acesso. Para mais informações, consulte Processar sem um servidor de back-end.

  7. Quais são os limites da API para consultar detalhes do produto?

    O número máximo de produtos que podem ser consultados em uma única chamada para a QueryProductDetails API é 50. Se você exceder esse limite, divida a solicitação em várias chamadas.

  8. Quais parâmetros são necessários ao chamar Query Purchases ou Launch Purchase Flow no cliente de faturamento?

    A função aceita QueryPurchasesContinuation, que é um callback de função com a assinatura std::function<void(QueryPurchasesResult)>. O callback transmite o resultado para você com todos os ProductPurchaseDetails. Essas informações estão disponíveis nos arquivos de cabeçalho do SDK no arquivo includes/billing/models.h.

    O launch_purchase_flow_result resultante tem funções ok() e code(). A função ok() retorna se o fluxo foi bem-sucedido. A função code() retorna a enumeração BillingError (includes/billing/enums.h), que tem 10 casos de erro possíveis, como erro de rede ou cancelamento do usuário.

  9. Há suporte para pedidos personalizados no fluxo de compra no cliente de faturamento?

    No design atual do SDK, não é possível transmitir seu próprio payload. No entanto, você pode fornecer qualquer combinação de obfuscated_account_id e obfuscated_profile_id. Você pode fornecer nenhum, apenas um ou ambos.

    O campo offer_token é obrigatório e especifica a oferta de compra que o usuário está tentando comprar no processo de finalização da compra. No momento, cada SKU no Google Play tem exatamente uma oferta (por exemplo, compre um item por US $10). No futuro, a equipe de faturamento do Google Play vai oferecer suporte a várias ofertas.

    Para garantir que os metadados sejam associados em casos de interrupções no fluxo de compras, armazene os metadados no servidor de back-end antes de iniciar a caixa de diálogo de compra e associe-os ao ID da conta do usuário, ao SKU comprado e ao carimbo de data/hora atual. Para mais informações, consulte Associar uma compra a dados internos.

  10. Quais são os pré-requisitos para mudar do faturamento do Google com OAuth para o faturamento do Google baseado em DLL?

    Os jogos podem continuar usando o login OAuth com o Google para gerenciar a conta conectada, mas o Google recomenda que você pare de usar as APIs de faturamento REST legadas. A mudança das APIs de faturamento REST (com login OAuth2) para o fluxo do SDK pode ser uma operação marcada por um recurso. Assim, ambos podem coexistir por um período enquanto o jogo muda.

  11. A chamada de API Launch Purchase Flow é processada por um navegador da Web?

    Não, o fluxo de compra agora é concluído totalmente no jogo usando uma sobreposição WebView perfeita, sem sair do cliente do jogo.

  12. Um usuário precisa fazer login separadamente para cada jogo para fazer uma compra?

    A conta em primeiro plano no Google Play Games é usada para cada sessão de jogo, então não é necessário fazer login novamente. A conta usada no Google Play Games quando a sessão de jogo é iniciada é a conta em que as chamadas de API são emitidas. O fluxo de compra vai usar essa conta automaticamente.

  13. Um jogo pode oferecer suporte ao SDK para PC e aos sistemas de pagamento legados ao mesmo tempo?

    O sistema de pagamento opera em um modelo de fluxo duplo, dependendo da versão binária do jogo. Os usuários em builds legados continuam no fluxo atual, e os usuários em novos builds fazem a transição para pagamentos baseados em SDK. Os usuários nos dois fluxos de pagamento coexistem durante o período de transição.

Pacote de apps do Windows

  1. Ao enviar um WAB usando um iniciador de terceiros, o pacote de jogos é necessário para análise?

    Você só precisa enviar o instalador e não precisa enviar todo o pacote de jogos. O revisor poderá fazer o download do pacote de jogos usando o instalador.

  2. Há alguma limitação no tamanho do arquivo WAB?

    Você pode fazer upload de um arquivo de até 10 GB para um WAB.

  3. Por que meu jogo não está sendo instalado ou aparecendo depois que eu fiz o upload do WAB?

    Se o jogo estiver sendo integrado sem uma versão para PC pré-existente (um "WAB pela primeira vez"), o sistema poderá colocá-lo automaticamente em um estado de retenção de publicação gerenciada. Isso acontece porque não há uma linha de base para atualizar. Para lançar totalmente o WAB e disponibilizar o jogo para instalação, você deve acessar o Google Play Console e executar manualmente a ação de publicação necessária (por exemplo, clique em "Publicar mudanças").

  4. Como faço upload do WAB para testes internos?

    Compartilhe as contas da lista de permissões com o Google para que ele possa ativá-las para testes internos. Depois que o Google tiver a lista, ele vai garantir que elas sejam incluídas no processo de integração.

  5. Onde o pacote WAB precisa ser enviado?

    Você pode fazer upload do pacote WAB no local mencionado na primeira pergunta. No entanto, não é possível publicá-lo manualmente. Você precisa fornecer à equipe de back-end do Google um horário UTC preciso (até a hora). Em seguida, o Google configura a programação de lançamento e garante que ela seja publicada no horário.

SDK para PC

  1. Quais são as diferenças entre a API legada e o SDK do Google Play Games no PC?

    • A API legada oferece apenas a funcionalidade de faturamento.
    • O SDK para PC oferece suporte ao Google Desktop Service (GDS) e a recursos completos para PC.
    • Nenhum login do Google baseado em navegador é necessário com o SDK para PC.
  2. Existe uma maneira alternativa de inicializar o SDK iniciando o jogo diretamente usando o iniciador de jogos, sem passar pelo Google Play Games no PC?

    O jogo precisa ser iniciado pelo cliente do Google Play Games no PC. Para mais detalhes, consulte este documento para desenvolvedores.

  3. O SDK para PC oferece suporte a caracteres multibyte no arquivo de certificação PEM?

    Sim, o SDK oferece suporte a caracteres multibyte para certificação.

  4. Como o SDK processa o login da Conta do Google para várias instâncias ou contas?

    Cada lançamento de jogo no Google Play Games é tratado como uma "sessão de jogo", e cada "sessão de jogo" pode ter uma conta associada a ela. Elas podem ser diferentes. Portanto, se você iniciar o jogo com a conta A e mudar para a conta B e reiniciar, ambos poderão ser executados ao mesmo tempo.

  5. A integração do Play Install Referrer funciona com o SDK para PC?

    O SDK para PC (25.5.409.0 e versões mais recentes) oferece suporte à API Play Install Referrer. Para mais informações, consulte API Play Install Referrer.

Launcher

  1. Se um jogador usar um launcher de terceiros em vez do cliente do Google Play, a conta dos serviços do Google Play Games será sincronizada automaticamente?

    Para que as funções do SDK funcionem, o jogo precisa ser iniciado diretamente pelo cliente do Google Play Games. Se outro processo, como um instalador ou um aplicativo de inicialização, iniciar o jogo, esse processo precisará ser iniciado no cliente do Google Play Games. O jogo precisa transmitir todos os parâmetros recebidos do cliente para o processo do cliente.

  2. Como faço para processar a inicialização se o Google Play Games iniciar um iniciador de jogos de terceiros?

    Não é necessário integrar o SDK diretamente ao iniciador. No entanto, você precisa transmitir todos os argumentos de linha de comando recebidos pelo iniciador do cliente do Google Play Games diretamente para o processo filho gerado (o executável do jogo). Se a inicialização falhar (por exemplo, retornando kActionRequiredShutdownClientProcess), todos os processos, incluindo o iniciador, precisarão ser encerrados para que o Google Play Games possa tentar recuperar e reiniciar o jogo automaticamente. Para mais detalhes, consulte a etapa 5 no guia de configuração.

  3. Como posso processar atualizações e manutenção do meu jogo e iniciador depois que ele estiver em produção?

    As atualizações e a manutenção subsequentes precisam ser implementadas pelo iniciador. O cliente do Google Play Games não oferece suporte a funções de atualização. Portanto, o iniciador precisa ser capaz de atualizar o jogo e o próprio iniciador.

  4. Como o instalador recebe o token de sessão do GPG para o Auto-Play?

    O GPG transmite o token de sessão usando o --g_session_token=<token> argumento de linha de comando para o instalador. Para ativar esse recurso, defina acceptsCommandLineArguments="true" no play_publishing_config.xml.

    O instalador é responsável por extrair esse token e usá-lo para iniciar o jogo. Se a geração de tokens falhar, o GPG vai iniciar o instalador sem o token (fallback).

Inicialização

  1. Quando inicio um jogo usando o app Google Play Games, ele sincroniza os detalhes da minha Conta do Google?

    Depois de iniciar o jogo pelo cliente do Google Play Games, a conta é sincronizada automaticamente, e não é necessário fazer login novamente pelo processo de login do Google.

  2. É possível reutilizar os parâmetros de inicialização várias vezes?

    Isso é possível desde que o cliente do Google Play Games esteja em execução e as informações de login sejam válidas. No entanto, em cenários como o descrito no guia, todos os processos iniciados pelo jogo precisam ser encerrados quando o usuário fecha o jogo ou ele sai devido a uma falha de inicialização do SDK, como kActionRequiredShutdownClientProcess.

  3. Existe alguma maneira de criar um atalho para abrir o jogo diretamente?

    Você pode usar o seguinte URI para abrir o jogo diretamente:

    googleplaygames://launch/?pid=2&id=com.company.gamename

    O URI oferece suporte à detecção de abertura do cliente do Google Play Games no PC. Se o cliente do Google Play Games não estiver aberto, ele será aberto antes da execução do jogo ou do iniciador. Você precisa gerenciar o jogo ou o iniciador para evitar que várias instâncias sejam executadas.

  4. Existe alguma maneira de verificar a instalação do Google Play Games no PC sem usar o SDK?

    Você pode verificar o status da instalação do Google Play Games no PC sem integrar o SDK. Para isso, verifique a presença da seguinte chave do Registro do Windows:

    HKEY_LOCAL_MACHINE\SOFTWARE\Google\Play Games Services

    A presença dessa chave indica que os serviços relacionados a jogos do Google Play (necessários para executar jogos no PC) estão instalados na máquina. Se a chave estiver ausente, direcione o usuário para a página de instalação do Google Play Games no PC para fazer o download e instalar o cliente.

Teste

  1. Há ambientes de teste aberto ou fechado semelhantes ao ambiente para dispositivos móveis?

    Embora um sandbox dedicado de ponta a ponta não esteja disponível, reconhecemos a necessidade de um ambiente de teste semelhante à produção para desenvolvedores. Uma solução mais robusta será oferecida em breve.

  2. Como posso adicionar novos testadores?

    Seu contato do Google cria um grupo de e-mails para cada projeto de PC, em que as Contas do Google dos testadores precisam ser adicionadas. Somente os membros desse grupo de e-mails estão autorizados a fazer o download dos pacotes de teste no Google Play Games.

Diversos

  1. Posso usar uma VPN?

    Para desenvolvedores que precisam testar o jogo em regiões em que o Google Play Games no PC não é compatível, recomendamos o uso de uma VPN para adquirir um endereço IP de uma região compatível.

    Certifique-se de ativar o modo TUN na VPN. As orientações sobre como ativar o modo TUN e configurar o firewall podem ser encontradas no manual de operação do provedor de VPN.

    Depois que o modo TUN estiver ativado, instale o Google Play Games no PC e o emulador para fins de teste.

  2. Como posso começar a desenvolver para o Google Play Games no PC no Unity ou no editor do UE?

  3. Como posso usar as chaves do Registro corretamente?

    Crie chaves do Registro com base na colmeia raiz. Você pode definir a colmeia raiz como HKEY_LOCAL_MACHINE ou HKEY_CURRENT_USER, dependendo da finalidade e da natureza dos dados. A colmeia HKEY_LOCAL_MACHINE é usada como exemplo nas diretrizes.

  4. Quais são os requisitos para a análise de pacotes de PC do Google?

    Os pacotes de PC passam por uma verificação de malware. Depois disso, os revisores testam apenas a instalação do jogo, a inicialização bem-sucedida e os processos de desinstalação.

  5. É necessário integrar todas as APIs?

    Outras APIs não são necessárias, mas oferecem benefícios adicionais. google::play::billing é necessário para compras no app e venda de conteúdo digital. google::play::install_referrer é necessário para rastrear dados de referência e ajudar você a entender quais fontes de tráfego enviam mais usuários para fazer o download do seu app. google::play::games::integrity é necessário para proteger seu app contra agentes mal-intencionados, detectando dispositivos potencialmente arriscados e emuladores desconhecidos.

  6. Por que alguns processos de jogos são encerrados quando o cliente do Google Play Games é fechado, enquanto outros não são?

    O Google não controla os subprocessos ou processos do jogo em execução. O comportamento depende de o jogo ser um jogo Android emulado ou um jogo para PC. Os jogos emulados são instalados no próprio ambiente, então o comportamento deles depende muito da inicialização e do encerramento do emulador.

  7. Devo usar a capacidade de desinstalação do Google Play Games ou um desinstalador personalizado?

    O Google recomenda o uso da capacidade de desinstalação do Google Play Games.

Receber mais ajuda

Se você precisar de mais ajuda que não seja abordada nestas perguntas frequentes, entre em contato com google-play-games-pc@google.com.