Uygulama içi yorumları entegre edin (Kotlin veya Java)

Bu kılavuzda, Kotlin veya Java'yı kullanarak uygulama içi yorumları uygulamanıza nasıl entegre edeceğiniz açıklanmaktadır. Yerel kod veya Unity kullanıyorsanız ayrı entegrasyon kılavuzları vardır.

Geliştirme ortamınızı ayarlama

Play Uygulama İçi İnceleme Kitaplığı, Google Play Core kitaplıklarının bir parçasıdır. Play Uygulama İçi İnceleme Kitaplığı'nı entegre etmek için lütfen aşağıdaki Gradle bağımlılığını dahil edin.

Eski

// 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.1'

    // For Kotlin users also add the Kotlin extensions library for Play In-App Review:
    implementation 'com.google.android.play:review-ktx:2.0.1'
    ...
}

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.1")

    // For Kotlin users also import the Kotlin extensions library for Play In-App Review:
    implementation("com.google.android.play:review-ktx:2.0.1")
    ...
}

İnceleme Yöneticisi'ni oluşturma

ReviewManager, uygulamanızın uygulama içi inceleme akışı başlatmasını sağlayan arayüzdür. ReviewManagerFactory ile bir örnek oluşturarak bu kimliği elde edebilirsiniz.

Kotlin

val manager = ReviewManagerFactory.create(context)

Java

ReviewManager manager = ReviewManagerFactory.create(context)

ReviewInfo nesnesi isteme

Uygulamanızın kullanıcı akışında kullanıcıdan inceleme istemek için iyi noktaları belirlemek üzere ne zaman uygulama içi inceleme isteğinde bulunacağınız hakkındaki yönergeleri izleyin (örneğin, kullanıcı oyunda bir seviyeyi tamamladığında). Uygulamanız bu noktalardan birine ulaştığında bir istek görevi oluşturmak için ReviewManager örneğini kullanın. Başarılı olursa API, uygulama içi inceleme akışını başlatmak için gereken ReviewInfo nesnesini döndürür.

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
    }
}

Java

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();
    }
});

Uygulama içi inceleme akışını başlatma

Uygulama içi inceleme akışını başlatmak için ReviewInfo örneğini kullanın. Uygulamanız normal kullanıcı işlemleri akışına devam etmeden (ör. sonraki seviyeye ilerleme) önce kullanıcının uygulama içi inceleme akışını tamamlamasını bekleyin.

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.
}

Java

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.
});

Sonraki adımlar

Entegrasyonunuzun doğru çalıştığını doğrulamak için uygulamanızın uygulama içi inceleme akışını test edin.