이 가이드에서는 Kotlin 또는 자바를 사용하여 앱에 인앱 리뷰를 통합하는 방법을 설명합니다. 네이티브 코드 또는 Unity를 사용한다면 별도의 통합 가이드를 참고하세요.
개발 환경 설정
Play In-App Review 라이브러리는 Google Play Core 라이브러리의 일부입니다. Play In-App Review 라이브러리를 통합하려면 다음 Gradle 종속 항목을 포함하세요.
Groovy
// In your app’s build.gradle file: ... dependencies { // This dependency is downloaded from the Google’s Maven repository. // So, make sure you also include that repository in your project's build.gradle file. implementation 'com.google.android.play:review:2.0.2' // For Kotlin users also add the Kotlin extensions library for Play In-App Review: implementation 'com.google.android.play:review-ktx:2.0.2' ... }
Kotlin
// In your app’s build.gradle.kts file: ... dependencies { // This dependency is downloaded from the Google’s Maven repository. // So, make sure you also include that repository in your project's build.gradle file. implementation("com.google.android.play:review:2.0.2") // For Kotlin users also import the Kotlin extensions library for Play In-App Review: implementation("com.google.android.play:review-ktx:2.0.2") ... }
ReviewManager 생성
ReviewManager
는 앱에서 인앱 리뷰 흐름을 시작할 수 있는 인터페이스입니다. ReviewManagerFactory
를 사용해 인스턴스를 생성하여 가져올 수 있습니다.
Kotlin
val manager = ReviewManagerFactory.create(context)
자바
ReviewManager manager = ReviewManagerFactory.create(context)
ReviewInfo 객체 요청
인앱 리뷰를 요청하는 경우에 관한 가이드라인에 따라 앱의 사용자 플로우에서 적절한 지점을 결정하여 사용자에게 리뷰를 요청하는 메시지를 표시합니다(예를 들어 게임에서 사용자가 레벨을 완료할 때). 앱은 이러한 지점 중 하나에 도달하면 ReviewManager
인스턴스를 사용하여 요청 작업을 생성합니다. 성공하면 API는 인앱 리뷰 흐름을 시작하는 데 필요한 ReviewInfo
객체를 반환합니다.
Kotlin
val request = manager.requestReviewFlow() request.addOnCompleteListener { task -> if (task.isSuccessful) { // We got the ReviewInfo object val reviewInfo = task.result } else { // There was some problem, log or handle the error code. @ReviewErrorCode val reviewErrorCode = (task.getException() as ReviewException).errorCode } }
자바
ReviewManager manager = ReviewManagerFactory.create(this); Task<ReviewInfo> request = manager.requestReviewFlow(); request.addOnCompleteListener(task -> { if (task.isSuccessful()) { // We can get the ReviewInfo object ReviewInfo reviewInfo = task.getResult(); } else { // There was some problem, log or handle the error code. @ReviewErrorCode int reviewErrorCode = ((ReviewException) task.getException()).getErrorCode(); } });
인앱 리뷰 흐름 시작
ReviewInfo
인스턴스를 사용하여 인앱 리뷰 흐름을 시작할 수 있습니다. 앱은 일반적인 사용자 플로우를 계속(예: 다음 레벨로 진행)하기 전에 사용자가 인앱 리뷰 흐름을 완료할 때까지 기다려야 합니다.
Kotlin
val flow = manager.launchReviewFlow(activity, reviewInfo) flow.addOnCompleteListener { _ -> // 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. }
자바
Task<Void> flow = manager.launchReviewFlow(activity, reviewInfo); flow.addOnCompleteListener(task -> { // 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. });
다음 단계
앱의 인앱 검토 흐름 테스트를 통해 통합이 제대로 작동하는지 확인합니다.