Google Play Games サービス、ゲーム v1 SDK は、サポートが終了し、2025 年に Google Play 開発者サービス Auth SDK(com.google.android.gms:play-services-auth)から削除される Google ログイン for Android に依存しています。新しいゲームアプリは、2025 年までゲーム v1 を使用できます。Google ログインを削除すると、既存のゲームアプリで依存関係の問題が発生します。既存のゲームアプリを Google Play Games サービス v1 の SDK から Google Play Games サービス v2 の SDK に移行すると、Google ログインの削除によって発生した依存関係の問題が解決されます。
このドキュメントでは、ゲームアプリとさまざまな SDK の間のインタラクションについて説明します。また、このドキュメントでは、アプリの機能と Play Games サービス ゲーム v1 およびゲーム v2 SDK の機能を比較します。
SDK のインタラクション
次の図は、Android のゲーム アプリケーション、Google モバイル サービス(GMS)コア、Play Games サービス、サードパーティ(3P)ゲーム サーバー間のインタラクションを示しています。この図は、アプリが認証とゲーム機能に Google のサービスを使用しながら、別のサードパーティ システムとやり取りしている様子を示しています。
ゲーム v2(現在)
games v1(以前のバージョン)
コンポーネントと SDK の概要は次のとおりです。
- ゲーム アプリケーション。
- これは、Android 搭載デバイスで実行されているユーザーのゲーム アプリケーションを表します。
- 主なコンポーネントは次の 2 つです。
- games v1 または games v2 SDK。Play Games サービスとのやり取りを担当するクライアントサイド SDK。
- Auth SDK。Google Play 開発者サービス Auth SDK は、ゲーム v1 でのユーザー認証と認可のフローを処理します。
- どちらの SDK も AIDL(Android インターフェース定義言語)を使用して通信します。これは、さまざまなプロセスやサービス間の通信パターンを示しています。
- GMS Core は Google Play 開発者サービスとも呼ばれます。
- これは Android の Google 独自のレイヤです。
- ゲーム アプリケーションは、次の 2 つの GMS Core モジュールを使用します。
- ゲーム モジュールは、リーダーボード、実績、ゲームの状態管理などのゲーム固有の機能を提供します。
- Auth モジュール。ユーザー認証と認可のオペレーションを処理します。
- ゲーム アプリケーションの Games SDK と Auth SDK は、 AIDL インターフェースを使用して対応するモジュールと通信します。これはプロセス間通信(IPC)を示しています。
- Play Games サービスのゲートウェイ。
- GMS Core と Play Games サービス サーバー間の通信を仲介する論理ゲートウェイ。
- サーバー通信の API リクエスト、データ変換、認証を処理します。
- Play Games サービス サーバー。
- ゲームデータの保存、ユーザー アカウントの管理、マルチプレーヤー機能の実現を担当する Play Games サービス バックエンド サービスを表します。
- サードパーティ製ゲームのゲートウェイ。
- ゲーム アプリケーションがサードパーティ(3P)アプリケーションとして認定されている場合、クライアント ライブラリはサードパーティ ゲームサーバーを介して Play Games サービス サーバーと通信します。
- アプリケーションが別のサービス プロバイダで認証できることを意味します。
- サードパーティのゲームサーバー。
- ゲーム アプリケーションがやり取りできるオプションの外部サーバーを表します。カスタム機能やデータ管理に使用される可能性があります。
- アプリケーションとの通信は、サードパーティ ゲーム ゲートウェイを介して行われます。
機能の比較
次の表は、games v1 SDK と games v2 SDK の機能の比較を示しています。
特徴 |
games v1 SDK |
games v2 SDK |
|---|---|---|
認証 |
play-services-auth との統合が必要です。 |
簡素化され、合理化されています。 play-services-auth は不要です。 |
承認 |
成功、失敗、再試行の追加コード。 |
SDK によって管理される |
サーバー アクセス トークン |
GoogleSigninClient を使用して、追加の
OAuth 2.0 スコープをリクエストできます。認証中のエラー処理用の追加コード。 |
Play ゲームサービス ウェブ API へのサーバーサイド アクセスをリクエストする際に、 GamesSignInClient で 3 つの基本的な OAuth 2.0 ID スコープをリクエストできます。詳しくは、 Play Games サービスに対するサーバーサイドのアクセスと サーバー認証コードを取得するをご覧ください。 |
ログイン プロセス |
GoogleSigninClient を使用します。自動認証とエラー処理のボイラープレート コードを処理するための追加コード。 |
GamesSignInClient を使用します。SDK は、ボイラープレート コード、自動認証、エラー処理を処理します。 |
Welcome Popup |
追加のコードが必要です。 配置とタイミングをデベロッパーが制御できます。 |
追加のコードは必要ありません。Google Play Games サービス v2 SDK で設定されたすべてのゲームで一貫したユーザー インターフェース。 |
依存関係 |
play-services-auth が必要。 |
Games モジュールは、認可と認証を処理します。追加の依存関係を追加する必要はありません。 |
| ログアウト |
GoogleSignInClient.signOut を使用します。 |
サインアウト API はサポートされていません。 |
複数の Play ゲームサービス アカウントとゲームごとの設定 |
ゲーム内でアカウント管理が可能です。 |
ユーザーは、モバイル デバイスの設定で Play Games サービス プロフィールを変更できます。詳しくは、 モバイルで Play Games プロフィールを切り替える方法をご覧ください。 |