API から SDK への移行

PC 版 Google Play Games ネイティブ ゲームが Play Billing API を直接呼び出す場合は、PC SDK を使用するようにゲームを移行する必要があります。

使用しているゲームエンジンに応じて、C++ SDK またはC# SDKを統合できます。 ネイティブ ゲームを SDK に移行するために使用できる例を示すサンプル プロジェクトをご覧ください。

セットアップと準備

このセクションでは、API ベースのソリューションから PC 版 Google Play Games ネイティブ SDK への移行手順について説明します。

コマンドライン引数

PC 版 Google Play Games ネイティブ SDK は、ゲーム プロセスの起動時に渡されるコマンドライン引数を使用してユーザーを認証します。これらの引数は、 Initialize SDK を呼び出すプロセスに渡す必要があります。ゲームの起動に複数のプロセスが関与している場合は、すべての引数が最終的に SDK を使用するプロセスに渡されることを確認する必要があります。セットアップの「複数のゲーム プロセスをサポートする 」の手順をご覧ください。

API マッピング

移行を完了するには、Play サーバーへの直接 API 呼び出しをすべて削除する必要があります。同じ機能を実現するための対応する関数呼び出しが SDK にあります。このセクションでは、各機能のマッピングを示します。

Google ログイン

Google ログイン(Google でログイン)は、Google アカウントを持つユーザーにワンクリック認証オプションを提供する OAuth 認証方法です。API ベースのプロジェクトでは、プレーヤーのアカウントを購入に関連付けます。SDK ベースのソリューションでは、この関連付けは必要ありません。

SDK ベースのソリューションでは、Google Play Games クライアントの Google アカウントを使用します。このアカウントは、プレーヤーのゲーマー プロファイルと利用権にすでに関連付けられています。SDK は IPC を介して Google Play Games クライアントと安全に通信できるため、プレーヤーにとってよりシームレスなエクスペリエンスを提供し、デベロッパーにとってより安全な環境を提供します。

Google ログインの代わりに、できるだけ早く Initialize SDK を呼び出します。エラーコードに応じて対応し、ゲームのランタイムに安全な環境を提供します。

商品リストを取得する

API ソリューションでは、バックエンド サーバーは Play Developer API inappproduct.gets エンドポイントを使用して商品リストを取得します。

SDK では、 QueryProductDetails 関数を使用して、クライアントでアプリ内商品リストを直接取得します。

購入を取得する

API ソリューションでは、バックエンド サーバーは Play Developer API purchases.products.get エンドポイントを使用してユーザーの購入を取得します。

SDK では、ゲーム クライアントから QueryPurchases 関数を直接使用します。

購入フローを起動する

API ソリューションでは、購入フローを起動するには、設定のために複数のエンドポイントを呼び出し、必要なトークンを取得する必要があります。

SDK では、BillingClient's LaunchPurchaseFlow 関数を呼び出してプロセスを起動します。必要な作業はすべて SDK によって処理されます。

購入を処理する

ユーザーの購入を処理する には、購入が正当であることを確認した後、購入を承認して使用する 必要があります。API ソリューションと SDK ソリューションの両方で、セキュリティ上の理由からバックエンドで完了する手順が推奨されています。

API ソリューションと SDK ソリューションのプロセスは似ています。

API ソリューションのProductPurchase.purchaseTokenや SDK ソリューションのProductPurchaseDetailspurchase_tokenなど、購入からpurchaseTokenを取得したら、確認のためにバックエンドに送信します。

確認が完了すると、バックエンドは利用権を付与した後、購入を安全に承認または使用 できます。

テスト用に送信する

テスト用にゲームを送信する手順は次のとおりです。

送信用にパッケージ化する

SDK を使用するゲームは、Windows App Bundle 形式でパッケージ化し、Google Play Console からアップロードする必要があります。ゲームを Windows App Bundle にパッケージ化する手順については、次のドキュメントをご覧ください。