모든 인스턴트 플레이 게임에는 Google Play 게임 서비스를 사용한 자동 로그인이 필요합니다. Google Play 게임 서비스를 사용하면 사용자가 원활하게 로그인할 수 있으며 클라우드에 저장된 게임 진행 상황을 복원하는 데 사용하는 일관된 플레이어 ID를 제공할 수 있습니다.
라이브러리의 크기 영향
Google Play 게임 서비스 라이브러리의 크기 영향은 게임 엔진이 자바에서 실행되는지, 네이티브에서 실행되는지 또는 Unity에서 실행되는지에 따라 다릅니다.
자바
ProGuard는 실제로 사용되는 클래스를 잘 파악하므로 크기 영향은 무시해도 좋습니다.
Unity
게임 저장을 Unity 게임에 통합하려는 경우 공식 Google Play 게임 서비스 플러그인을 사용할 수 있습니다. ProGuard 권장사항을 사용하면 크기 영향이 약 200KB로 최소화됩니다.
네이티브
게임 저장을 NDK 기반의 게임과 통합하려는 경우 네이티브 Play 게임 서비스 SDK를 사용하세요.
아래의 일반 ProGuard 구성을 사용하여 라이브러리에 포함된 대부분의 자바 코드를 제거하세요. 이 구성을 사용하면 APK에 약 250KB만 추가하면서 Play 게임 서비스 로그인 및 게임 저장을 구현할 수 있습니다.
# 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 *;
}