O Google Play Games está na versão Beta aberta.

Compatibilidade e otimização

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O Google Play Games exige que você adicione suporte e otimizações para PC ao jogo. Além dessas mudanças, também é necessário atualizar a configuração gráfica do jogo para garantir a compatibilidade com PC.

Confira os Requisitos mínimos de PC para configurar sua máquina de desenvolvimento e garantir que os usuários possam instalar a plataforma.

Incluir arquitetura x86 ABI

Todas as bibliotecas incluídas no jogo exigem versões com suporte à ABI x86 para garantir melhor desempenho e estabilidade na plataforma. O Google Play Games oferece suporte a versões de 32 e 64 bits, mas você só precisa escolher uma para atender ao requisito.

Compilação da biblioteca

Para garantir maior compatibilidade com o processador x86, não use o conjunto de instruções Atom ao compilar bibliotecas. Por exemplo, ao usar gcc, evite usar -march=atom. Use -march=x86 ou -march=x86-64.

Arquitetura de destino no Unity

Caso seu jogo use o mecanismo de jogo Unity, faça o seguinte para ativar os destinos x86/x86-64 do Android:

.
  1. Acesse Player Settings > Other Settings > Configuration > Scripting Backend e selecione IL2CPP no menu suspenso para ativar o back-end de script IL2CPP.

  2. Ative os destinos x86 do Android para sua versão do Unity:

    • Unity 2018 e anteriores: acesse Player Settings > Other Settings > Target Architecture e marque a caixa de seleção x86.

    • Versão 2019 de Suporte de longo prazo (LTS) e mais recentes do Unity: acesse Player Settings > Other Settings > Target Architectures e ative as opções x86 (Chrome OS) e x86-64 (Chrome OS).

Para maximizar o suporte a mecanismos de jogo, recomendamos ativar o suporte a arquiteturas x86 e x86-64 ou somente x86-64 para que você não tenha limitações de espaço de memória de 32 bits.

Como o Unity 2018 só tem suporte a destinos x86, você pode ignorar o suporte para x86-64. No entanto, esse build não pode ser lançado no Android devido ao requisito de 64 bits. Nesse caso, você precisa manter um build separado para o Google Play Games.

Detectar o Google Play Games

Você pode detectar a plataforma Google Play Games durante a execução e assim ativar ou desativar recursos específicos da plataforma no jogo.

Verifique o recurso do sistema com.google.android.play.feature.HPE_EXPERIENCE para determinar se o jogo está sendo executado na plataforma Google Play Games:

Kotlin

    var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  

Java

    PackageManager pm = getPackageManager();
    boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
  

C#

var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager");
var isPC = packageManager.Call<bool>("hasSystemFeature", "com.google.android.play.feature.HPE_EXPERIENCE");
  

Processar eventos de ciclo de vida do Android

É importante processar o evento onPause (c++) no ambiente do Google Play Games. O jogo vai ficar visível quando o jogador ativar a sobreposição do emulador. Se o evento onPause não for detectado, isso poderá gerar uma experiência do usuário ruim.

Atualizar a IU com suporte para PC

Alguns elementos e gestos da IU não são adequados para PC e precisam ser atualizados.

Necessário:

  • Substitua as ações da IU que precisam de dois ou mais dedos, por exemplo, "fazer gesto de pinça para controlar o zoom".
  • Todos os textos visíveis ao usuário devem dizer "clicar" em vez de "tocar".
  • As listas roláveis precisam ter barras de rolagem.
  • As áreas roláveis precisam ter barras de rolagem ou outra maneira de percorrer grandes distâncias rapidamente.
  • Não exiba um teclado clicável na tela para entrada de texto.
  • Todas as entradas de texto devem estar dentro dos limites do campo de texto.

  • Os cliques em elementos visíveis precisam:

    • aceitar cliques em qualquer lugar dentro dos limites visíveis do elemento;
    • não aceitar um clique na área fora do elemento visível.
  • As caixas de diálogo precisam ter um botão "Fechar" visível. Não detecte cliques fora dos limites da caixa de diálogo.

Desativar caixas de diálogo de permissões

O Google Play Games não mostra caixas de diálogo de permissões. Portanto, não tente as exibir antes de solicitar permissões. Se você as exibia anteriormente, atualize o aplicativo para que não sejam mais exibidas no PC.

Recursos e permissões do Android sem suporte

No PC, alguns recursos do Android disponíveis em smartphones ou tablets não podem ser acessados. Isso inclui recursos de hardware, como a câmera e outros recursos, como a localização do usuário. Sendo assim, seu jogo não pode depender de recursos ou permissões do Android não compatíveis. No PC, se o jogo solicitar acesso a uma permissão não compatível, a solicitação falhará automaticamente.

Para tornar seu jogo compatível com PCs, as mudanças abaixo são necessárias:

  • No manifesto do app, adicione android:required="false" à declaração de <uses-feature> para todos os recursos sem suporte ao Google Play Games. Isso se aplica apenas aos recursos já declarados no manifesto do app.
  • Desative os recursos do jogo que dependem de hardware e recursos de software não disponíveis no PC. Se você estiver usando o mesmo APK do jogo para dispositivos móveis, pode o desativar condicionalmente no PC.
  • Desative as solicitações de permissões incompatíveis do Android no seu jogo e os recursos que dependem delas. Se você estiver usando o mesmo APK do seu jogo para dispositivos móveis, poderá fazer mudanças condicionais para PC e não precisará mudar as permissões declaradas no manifesto.

Para ver mais informações sobre a compatibilidade do manifesto do app, consulte nosso guia sobre compatibilidade do manifesto do app do Chromebook.

Remova esses recursos de hardware antes de enviar o primeiro build de teste ao Google Play Console:

  • android.hardware.wifi
  • android.hardware.bluetooth
  • android.hardware.camera
  • android.hardware.location
  • android.hardware.microphone

Para mais informações sobre como remover o recurso android.hardware.wifi, consulte Monitorar o status da conectividade e a medição da conexão. Para ver uma lista completa de recursos sem suporte, consulte o guia de compatibilidade de manifestos do app.

Estes recursos de hardware usados com frequência não são compatíveis com PCs. Por isso, é necessário os remover antes do envio final para o Google Play Console:

  • android.hardware.audio.pro
  • android.hardware.bluetooth
  • android.hardware.camera
  • android.hardware.consumerir
  • android.hardware.location
  • android.hardware.microphone
  • android.hardware.nfc
  • android.hardware.sensor.light
  • android.hardware.sensor.accelerometer
  • android.hardware.sensor.barometer
  • android.hardware.sensor.compass
  • android.hardware.sensor.gyroscope
  • android.hardware.sensor.proximity
  • android.hardware.telephony
  • android.hardware.touchscreen
  • android.hardware.usb.accessory
  • android.hardware.usb.host
  • android.hardware.wifi
  • android.software.midi

Estas permissões usadas com frequência não têm suporte no PC:

  • android.permission.FOREGROUND_SERVICE
  • android.permission.INSTALL_PACKAGES
  • android.permission.READ_PHONE_STATE
  • android.permission.USE_CREDENTIALS
  • android.permission.CAMERA
  • android.permission.ACCESS_FINE_LOCATION
  • android.permission.ACCESS_COARSE_LOCATION
  • android.permission.WRITE_SETTINGS
  • android.permission.REQUEST_INSTALL_PACKAGES
  • android.permission.SYSTEM_ALERT_WINDOW
  • android.permission.READ_CONTACTS
  • com.google.android.gms.permission.ACTIVITY_RECOGNITION
  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.WRITE_EXTERNAL_STORAGE
  • android.permission.GET_ACCOUNTS
  • android.permission.RECORD_AUDIO

Sites externos e WebViews

Uma intent de navegador vai ser carregada no navegador da Web nativo do PC, e não no ambiente do Google Play Games. Isso cria uma experiência ideal para os jogadores na maioria das situações.

Para facilitar a portabilidade, o Google Play Games oferece suporte à WebView. Como ela abre no ambiente do Google Play Games, não oferece a experiência do usuário típica do navegador para computador. Se você usava a WebView para compartilhar Termos de Serviço, Política de Privacidade ou outros conteúdos semelhantes, invoque uma intent de navegador.

Desativar APIs sem suporte ao Google Play Services

O Google Play Games envia a própria variante do Google Play Services, que contém somente um subconjunto das APIs do Google Play Services. É necessário confirmar que o aplicativo não depende muito de módulos omitidos ou sem suporte a PCs. Alguns módulos podem estar disponíveis, mas nem sempre há suporte para a funcionalidade deles. Por exemplo, o Firebase Cloud Messaging não vai funcionar quando o Google Play Games for fechado.

Módulos com suporte

No momento, estes módulos estão disponíveis e vão oferecer suporte ao Google Play Games no futuro.

Suporte limitado

Os módulos abaixo são parcialmente funcionais. Faremos o possível para oferecer suporte a eles no Google Play Games, mas não podemos garantir a funcionalidade.

Sem suporte

Estes módulos não são compatíveis com o Google Play Games, mas não causam problemas quando falham.

Corrompido

Não use estes módulos porque eles podem causar um comportamento inesperado no Google Play Games.

Ativar o armazenamento com escopo

Esta seção se aplica caso o jogo faça leitura/gravação no armazenamento externo. A aplicação do armazenamento com escopo é uma forma alternativa de ler e gravar dados. Isso elimina a necessidade de solicitar estas permissões confidenciais ao jogador:

  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.WRITE_EXTERNAL_STORAGE

Para ver mais informações sobre o armazenamento com escopo, consulte:

Desativar anúncios para dispositivos móveis na versão para PC do jogo

Para otimizar seu jogo para PC, é necessário desativar os anúncios para dispositivos móveis, porque eles são incompatíveis com computadores e laptops. Isso inclui todos os blocos de anúncios fornecidos pelos SDKs de anúncios para dispositivos móveis. Você não precisa fazer mudanças nos anúncios da versão para dispositivos móveis do jogo. Recomendamos o uso de sinalizações de recurso para limitar as mudanças somente à versão de PC do jogo. Você ainda pode manter os anúncios para dispositivos móveis no Chrome OS.

Para remover anúncios para dispositivos móveis, siga estas etapas:

  • Desative todos os blocos de anúncios para dispositivos móveis, incluindo banners, intersticiais e anúncios premiados.
  • Desative os recursos do jogo que dependem de anúncios premiados Por exemplo, um recurso que permite aos usuários assistir a um anúncio em vídeo para ganhar moedas do jogo pode ser desativado ou removido completamente.

Análise

Os produtos legados do Google Analytics não funcionam no Google Play Games. Se esse for seu caso, migre para o Google Analytics 4.

Essa mudança só vai entrar em vigor se você estiver usando o Google Analytics 360. Se você usa o SDK do Firebase para acompanhar eventos de análise do jogo e o jogo é exibido como uma propriedade no Console do Google Analytics, não é necessário tomar outras providências.