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

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

Geliştirme ortamınızı kurma

Play uygulama içi yorum kitaplığı, Google Play Core kitaplıklarının bir parçasıdır. Play In-App Review Library'yi entegre etmek için aşağıdaki Gradle bağımlılığını ekleyin.

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'ı oluşturun

ReviewManager, uygulamanızın uygulama içi yorum akışı başlatmasına olanak tanıyan arayüzdür. ReviewManagerFactory kullanarak bir örnek oluşturarak elde edin.

Kotlin

val manager = ReviewManagerFactory.create(context)

Java

ReviewManager manager = ReviewManagerFactory.create(context)

ReviewInfo nesnesi isteğinde bulunma

Kullanıcıdan yorum istemek için uygulamanızın kullanıcı akışında uygun noktaları belirlemek üzere uygulama içi yorum isteğinde bulunma zamanı ile ilgili yönergeleri uygulayın (örneğin, kullanıcı bir oyunda seviyeyi tamamladığında). Uygulamanız bu noktalardan birine ulaştığında istek görevi oluşturmak için ReviewManager örneğini kullanın. Başarılı olursa API, uygulama içi yorum 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();
    }
});

In-App Review akışını başlatma

Uygulama içi yorum akışını başlatmak için ReviewInfo örneğini kullanın. Uygulamanızın normal kullanıcı akışına (ör. bir sonraki seviyeye geçme) devam etmeden önce kullanıcının uygulama içi yorum 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 şekilde çalıştığını doğrulamak için uygulamanızın uygulama içi yorum akışını test edin.