/// <summary> /// Launches and displays the in-app review flow to the user. /// Returns a <see cref="PlayAsyncOperation"/> that will be marked IsDone when /// the in-app review dialog is closed. /// </summary> public PlayAsyncOperation <VoidResult, ReviewErrorCode> LaunchReviewFlow( PlayReviewInfo reviewInfo) { #if UNITY_EDITOR var operation = new ReviewAsyncOperation <VoidResult>(); operation.SetResult(new VoidResult()); return(operation); #else return(LaunchReviewFlowInternal(reviewInfo)); #endif }
private PlayAsyncOperation<VoidResult, ReviewErrorCode> LaunchReviewFlowInternal(PlayReviewInfo reviewInfo) { var operation = new ReviewAsyncOperation<VoidResult>(); var requestFlowTask = _reviewPlayCoreTaskManager.LaunchReviewFlow(reviewInfo.GetReviewInfo()); requestFlowTask.RegisterOnSuccessCallback(result => { operation.SetResult(new VoidResult()); requestFlowTask.Dispose(); }); requestFlowTask.RegisterOnFailureCallback((reason, errorCode) => { operation.SetError(ReviewErrorCode.ErrorLaunchingFlow); requestFlowTask.Dispose(); }); return operation; }
/// <summary> /// Launches and displays the in-app review flow to the user. /// Returns a <see cref="PlayAsyncOperation"/> that will be marked IsDone when /// the in-app review dialog is closed. /// </summary> public PlayAsyncOperation<VoidResult, ReviewErrorCode> LaunchReviewFlow( PlayReviewInfo reviewInfo) { return LaunchReviewFlowInternal(reviewInfo); }