Google Play Games サービスに対応する

Instant Play ゲームはすべて、Google Play Games サービスを使用した自動ログインをサポートする必要があります。Google Play Games サービスを使用して、保存した進行状況をクラウドから復元するために使用できる一貫したプレーヤー ID を提供します。

ライブラリのサイズへの影響

Google Play Games サービス ライブラリのサイズに対する影響は、ゲームエンジンの実行環境(Unity、Java、ネイティブ)によって異なります。

Java

ProGuard は使用されるクラスについて通知されるため、サイズへの影響は最小限です。

Unity

公式の Google Play Games サービス プラグインを使用して、ゲーム保存機能を Unity ゲームに統合できます。ProGuard の推奨事項を使用した場合、サイズへの影響は約 200 KB です。

ネイティブ

Native Play Games サービス SDK を使用すると、Android NDK でビルドされたゲームにゲームセーブ機能を統合できます。

以下の一般的な ProGuard 設定を使用すると、ライブラリに含まれる Java コードのほとんどを削除できます。この構成で Play ゲームサービスのログインとゲーム保存を実装できますが、APK に追加する容量は約 250 KB のみです。

# 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 *;
}