本導覽說明如何在應用程式中使用 Unity 整合應用程式內審查。如果您使用的是 Kotlin 或 Java 或原生程式碼,分別有不同的整合導覽可供查閱。
Unity SDK 總覽
Play 應用程式內審查 API 屬於 Play Core SDK 系列的一部分。適用於 Unity 的 API 提供 ReviewManager
類別,可利用 RequestReviewFlow
和 LaunchReviewFlow
方法要求及啟動流程。提出要求後,應用程式就能使用 ReviewErrorCode
查看要求的狀態。
設定開發環境
從適用於 Unity 的 Google 套件下載最新版 Play 應用程式內評論 Unity 外掛程式。
建立 ReviewManager
建立 ReviewManager
執行個體以處理應用程式和 API 之間的通訊。
// 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.
後續步驟
測試應用程式內評論流程,以確認這項整合機制能正常運作。