Kotlin ile Google Play In-App Review Kullanımı

Yayınlanan Android uygulamanızın puanlanma ve yorumlarının yapılması indirme sayısına etkisi çok büyüktür. Puanlandırmayı uygulama içinde yaptırılmasıyla müşterinin uygulamada kalmasını sağlayabilirsiniz. Böylelikle kullanıcı deneyimini arttırmış olursunuz.

Bu makalemde, Google Play In-App Review API kullanarak Kotlin dilinde yazılan Android uygulamanın içinde kullanıcının uygulama puanlanma ve yorumlarını yapmasını sağlayan yapıyı örneklendirdim.

Google Play In-App Review API kullanarak Java dilinde yazılan Android uygulamanın makalesine Java ile Google Play In-App Review API linkinden ulaşabilirsiniz.

Örnek projemizin ekran görüntüsü;

In-App Review için Önemli Noktalar

  1. Bu API yalnızca Android 5.0 (API seviyesi 21) veya sonraki sürümlere sahip olan Android cihazlarda çalışır.
  2. Google Play, kullanıcıya ne sıklıkla review dialog arayüzünü gösterilebileceğiniz konusunda zamana bağlı bir kota uygular. Bu kota nedeniyle, launchReviewFlow yöntemini kısa bir süre içinde birden çok kez çağırmak her zaman bir iletişim kutusu görüntülemeyebilir. (örneğin, bir aydan az). Kota hakkında bilgileri quotas linkinden ulaşabilirsiniz.
  3. Google Play bu yapıyı kullanırken tasarımını değiştirmemize olanak sağlamamaktadır.

Kotlin ile geliştireceğimiz projemizde Google Play In-App Review API’yi uygulayabilmek için aşağıdaki belirttiğim adımları uygulamalısınız.

1-Gerekli Kütüphanelerin Eklenmesi

Android Studio Ide ile oluşturduğum projemin app dizinin altındaki build.gradle dosyasını açıyoruz. Dependencies kod bloklarının arasına aşağıdaki kodları yerleştirerek Play Core API kütüphanelerini yüklüyoruz.

implementation 'com.google.android.play:core:1.8.0'
implementation 'com.google.android.play:core-ktx:1.8.1'

2- Backend Kodlama

Kullanıcıdan doğru zamanda puanlandırma istemek için uygulamanızın akışındaki iyi noktaları belirlemeniz (örneğin, kullanıcı bir oyunda bir seviyeyi tamamladığında) çok önemlidir.

İlk önce ReviewManagerFactory sınıfı ile ilgili Activity sınıfında puanlandırma isteğini oluşturmamız gerekir. Sonrasında requestReviewFlow metodundan dönen istediği isSuccessful ile kontrol ettiğimizde sonuç başarılı ise ReviewInfo nesnesi üzerinden launchReviewFlow () yöntemini çağırdık. Bazı nedenlerden dolayı işleyiş başarısız olursa, hatayı log console da göstermesini sağladık.

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import com.google.android.play.core.review.ReviewManagerFactory
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        //Button'a tıklandığında puanlandırma sistemini çalıştıran metod çağırdım
        show_rate_app_btn.setOnClickListener {
            inAppReview()
        }
    }
    //Google Play puanlandırma ekranını oluşturan metod
    fun inAppReview() {
        val reviewManager = ReviewManagerFactory.create(this)
        val requestReviewFlow = reviewManager.requestReviewFlow()
        requestReviewFlow.addOnCompleteListener { request ->
            //Widget açılıp, puanlandırma ve yorum yapılabildiği bölüm
            if (request.isSuccessful) {
                val reviewInfo = request.result
                val flow = reviewManager.launchReviewFlow(this, reviewInfo)
                flow.addOnCompleteListener { 
                    //Kullanıcının puanlandırma ekranındaki işlemi bitmiş ve yazılım akışına devam edilecek bölüm
                }
            } else {
                Log.d("Error: ", request.exception.toString())
            }
        }
    }
}

3- Arayüz Kodlama

Activity sınıfımızda kullandığınız arayüz xml sayfasınıza bir button ekledim. Button id değerini de “show_rate_app_btn” yaptım. Üstte kotlin kodlamasında da kullandım.

Kaynak

1-https://developer.android.com/guide/playcore/in-app-review/kotlin-java

2- https://smality.com/google-play-in-app-review-api-kullanimi/

 

 

Tavsiye Edilen Yazılar

Henüz yorum yapılmamış, sesinizi aşağıya ekleyin!


Bir Yorum Ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir