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
- Bu API yalnızca Android 5.0 (API seviyesi 21) veya sonraki sürümlere sahip olan Android cihazlarda çalışır.
- 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.
- 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/
Henüz yorum yapılmamış, sesinizi aşağıya ekleyin!