アプリ内レビューを統合する(Unity)

このガイドでは、Unity を使用してアプリにアプリ内レビューを統合する方法について説明します。Kotlin または Java を使用している場合とネイティブ コードを使用している場合は、個別の統合ガイドを参照してください。

Unity SDK の概要

Play In-App Review API は Play Core の一部である SDK ファミリーです。Unity 向けの API には ReviewManager クラスが用意されており、RequestReviewFlow メソッドと LaunchReviewFlow メソッドを使用してフローをリクエストおよび起動できます。リクエストの実行後、アプリは ReviewErrorCode を使用してリクエストのステータスを確認できます。

開発環境をセットアップする

Play In-App Review Unity Plugin の最新リリースを Unity

ReviewManager を作成する

アプリと API 間の通信を処理する ReviewManager のインスタンスを作成します。

// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();

ReviewInfo オブジェクトをリクエストする

アプリ内レビューをリクエストするタイミングのガイダンスに沿って、アプリのユーザーフロー内でユーザーにレビューを求める適切なポイント(たとえば、ゲームの特定のレベルの終了時に表示される概要画面をユーザーが閉じた後)を決定します。アプリがいずれかのポイントに近づいたら、ReviewManager インスタンスを使用して非同期オペレーションを作成します。次の例をご覧ください。

var requestFlowOperation = _reviewManager.RequestReviewFlow();
yield return requestFlowOperation;
if (requestFlowOperation.Error != ReviewErrorCode.NoError)
{
    // Log error. For example, using requestFlowOperation.Error.ToString().
    yield break;
}
_playReviewInfo = requestFlowOperation.GetResult();

呼び出しが成功すると、API は PlayReviewInfo オブジェクトを返します。このオブジェクトは、アプリがアプリ内レビューフローを開始するために必要です。この例では、 コルーチン内で呼び出しが行われる 非同期オペレーションを実行します(これによりメインスレッドはブロックされません)。この呼び出しは非同期で行われるため、最大で数秒かかります。したがって、ユーザーフロー内でアプリ内レビューを表示するポイントにアプリが到達する前に、この呼び出しを行う必要があります。

アプリ内レビューフローを開始する

アプリは、PlayReviewInfo インスタンスを受け取ったら、アプリ内レビューフローを開始できます。PlayReviewInfo オブジェクトは一定期間のみ有効であるため、アプリはフローの開始を長時間待つべきではありません。

var launchFlowOperation = _reviewManager.LaunchReviewFlow(_playReviewInfo);
yield return launchFlowOperation;
_playReviewInfo = null; // Reset the object
if (launchFlowOperation.Error != ReviewErrorCode.NoError)
{
    // Log error. For example, using requestFlowOperation.Error.ToString().
    yield break;
}
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown. Thus, no
// matter the result, we continue our app flow.

次のステップ

アプリのアプリ内レビューフローをテストして、統合が正しく機能していることを検証します。