Este documento responde a perguntas comuns sobre SDKs e publicação para o Google Play Games no PC.
Monetização
Por que meu fluxo de compra falha com o código de erro 6 depois de adicionar uma nova chave de faturamento ou licenciamento?
As chaves de licenciamento recém-geradas no Google Play Console têm um atraso de várias horas no armazenamento em cache e na propagação no back-end de comércio antes que os caches internos do Google Play sejam sincronizados em todos os ambientes de veiculação. Mesmo que o cliente do jogo possa consultar os detalhes do produto, as solicitações de compra vão falhar com o código de erro 6 até que a sincronização seja concluída. Aguarde algumas horas após fazer o upload ou atualizar a chave de licenciamento antes de testar as compras.
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.
Os sistemas de pagamento baseados em API 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 a forma de pagamento baseada em API no mesmo jogo.
Como podemos consumir compras no modo de desenvolvedor?
Consuma a compra no modo de desenvolvedor em até 3 minutos. Caso contrário, ela será reembolsada.
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 roadmap futuro.
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.
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.
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
QueryProductDetailsAPI é 50. Se você exceder esse limite, divida a solicitação em várias chamadas.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 assinaturastd::function<void(QueryPurchasesResult)>. O callback transmite o resultado com todos osProductPurchaseDetails. Essas informações estão disponíveis nos arquivos de cabeçalho do SDK no arquivoincludes/billing/models.h.O
launch_purchase_flow_resultresultante tem funçõesok()ecode(). A funçãook()retorna se o fluxo foi bem-sucedido. A funçãocode()retorna a enumeraçãoBillingError(includes/billing/enums.h), que tem 10 casos de erro possíveis, como cancelamento do usuário ou erro de rede.Há suporte para pedidos personalizados no fluxo de compra de lançamento 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_ideobfuscated_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.
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 recursos. Assim, as duas podem coexistir por um período enquanto o jogo muda.
A chamada de API do fluxo de compra de lançamento é 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.
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. Portanto, 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.
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
Ao enviar um WAB usando um iniciador de terceiros, o pacote de jogos é necessário para análise?
Basta enviar o instalador. Não é necessário enviar todo o pacote de jogos. O revisor poderá fazer o download do pacote de jogos usando o instalador.
Há limitações no tamanho do arquivo WAB?
É possível fazer upload de um arquivo de até 10 GB para um WAB.
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").
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 as contas sejam incluídas no processo de integração.
Onde o pacote WAB precisa ser enviado?
É possível 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
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.
Há 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.
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.
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, as duas poderão ser executadas ao mesmo tempo.
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
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.
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.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.
Como o instalador recebe o token de sessão do GPG para o jogo automático?
O GPG transmite o token de sessão usando o
--g_session_token=<token>argumento de linha de comando para o instalador. Para ativar isso, definaacceptsCommandLineArguments="true"noplay_publishing_config.xml.O instalador é responsável por extrair esse token e usá-lo para iniciar o jogo. Se a geração de token falhar, o GPG vai iniciar o instalador sem o token (fallback).
Inicialização
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.
É 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.Há alguma maneira de criar um atalho para abrir o jogo diretamente?
É possível usar o seguinte URI para abrir o jogo diretamente:
googleplaygames://launch/?pid=2&id=com.company.gamenameO 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.
Há alguma maneira de verificar a instalação do Google Play Games no PC sem usar o SDK?
É possível 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 ServicesA presença dessa chave indica que os serviços do Google Play Games (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
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.
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
Posso usar uma VPN?
Para desenvolvedores que precisam testar o jogo em regiões onde o Google Play Games no PC é indisponível, recomendamos o uso de uma VPN para adquirir um endereço IP de uma região com suporte.
Verifique se o modo TUN está ativado 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.
Como posso começar a desenvolver para o Google Play Games no PC no Unity ou no editor do UE?
- Ative o modo de desenvolvedor e continue com os testes.
- Adicione os arquivos
manifest.xmle.dll. Para mais informações, consulte o documento para desenvolvedores. - Registre um GUID de parceiro de acesso antecipado para fins de teste.
Como posso usar as chaves de registro corretamente?
Crie chaves de registro com base na colmeia raiz. É possível definir a colmeia raiz como
HKEY_LOCAL_MACHINEouHKEY_CURRENT_USER, dependendo da finalidade e da natureza dos dados. A colmeiaHKEY_LOCAL_MACHINEé usada como exemplo nas diretrizes.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.
É 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 origens de tráfego enviam mais usuários para fazer o download do app.google::play::games::integrityé necessário para proteger o app de agentes mal-intencionados, detectando dispositivos potencialmente arriscados e emuladores desconhecidos.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 se o jogo é 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.
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.