Suporte para serviços relacionados a jogos do Google Play

Todos os jogos instantâneos do Google Play precisam ser compatíveis com a fazer login usando os serviços relacionados a jogos do Google Play. Usar Serviços relacionados a jogos do Google Play para fornecer um ID de jogador consistente que possa ser usado para restaurar o progresso salvo da nuvem.

Impacto do tamanho da biblioteca

O impacto do tamanho da biblioteca dos serviços relacionados a jogos do Google Play depende se o o mecanismo de jogo é executado em Unity, Java ou Native.

Java

O impacto do tamanho é mínimo porque o ProGuard é informado sobre quais classes são usadas.

Unity

É possível integrar o recurso de salvamento de jogos ao seu jogo do Unity usando o plug-in oficial dos serviços relacionados a jogos do Google Play. Se você usar as recomendações do ProGuard, o impacto do tamanho será de cerca de 200 KB.

Nativo

É possível integrar o recurso de salvamento de jogos a um jogo criado no Android NDK usando o SDK nativo dos serviços relacionados a jogos do Google Play:

Use a configuração geral do ProGuard abaixo para remover a maior parte do código Java incluído pela biblioteca. Você pode implementar os serviços relacionados a jogos do Google Play login e salvamento de jogos com essa configuração, adicionando apenas ao APK.

# The native PGS library wraps the Java PGS SDK using reflection.
-dontobfuscate
-keeppackagenames

# Needed for callbacks.
-keepclasseswithmembernames,includedescriptorclasses class * {
    native <methods>;
}

# Needed for helper libraries.
-keep class com.google.example.games.juihelper.** {
  public protected *;
}
-keep class com.sample.helper.** {
  public protected *;
}

# Needed for GoogleApiClient and auth stuff.
-keep class com.google.android.gms.common.api.** {
  public protected *;
}

# Keep all of the "nearby" library, which is needed by the native PGS library
# at runtime (though deprecated).
-keep class com.google.android.gms.nearby.** {
  public protected *;
}

# Keep all of the public PGS APIs.
-keep class com.google.android.gms.games.** {
  public protected *;
}