Google geçtiğimiz yeni bir özellik duyurdu. Artık kullanıcılar uygulamanın mağaza girişine gitmeye gerek kalmadan uygulama içerisinde gerekli değerlendirmesini yapıp yorumunu yazarak gönderebiliyor. Birçok kullanıcı mağaza girişine gitme zahmetine katlanmadığı için uygulama içinde değerlendirme isteseniz bile vermiyordu. Bu yeni özellikle mağaza girişine gitmeye gerek kalmadığı için yorum ve değerlendirme sayınızı artıracağı kuşkusuzdur.
Bu apiyi kullanabilmek için android sürümü minimum
Android 5.0 (API 21) olması gerekiyor. Daha düşük sürümleri desteklemiyor. Basit bir methodla istediğiniz yerde review diyaloğunu gösterebilirsiniz. Kendi kullandığım kodları aşağıda vereceğim istediğiniz gibi kullanabilirsiniz.
Avantajları- Mağaza gitmeye gerek duymadan kullanıcıdan değerlendirme alabiliyor.
- Normal oy ver dialoğuna göre çok daha etkili.
Dezavantajları- Android 5'in altındaki sürümleri desteklemiyor. Eski telefonlara yönelik bir appniz varsa istediğiniz verimi alamazsınız.
- Review dialogunun gösteriminde kota var. Diyelim ki kullanıcıya dialogu bir kez gösterdiniz, kullanıcı oy vermedi ve dialogu kapattı. Bu durumda 2. sefer review dialogunun gösterileceğinin garantisi yok. Google kullanıcı deneyimi için bu kotayı kendi koymuş. Bu sorunun önüne geçmek için review dialogunu göstermeden önce kullanıcıya uygulamayı beğendiniz mi gibi bir soru sorarak tepkisini ölçmelisiniz.
Kullanım
Öncelikle gradle dosyasına Play Core Kütüphanesini eklemeniz gerekiyor.
dependencies
{ implementation 'com.google.android.play:core:1.8.0'}MainActivity kodları bu şekilde. Buradaki Review methodunu istediğiniz yerde çağırarak dialogu gösterebilirsiniz. Ben btnReview'e tıklandığında çağırdım.
package com.awoapp.inappreview;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import com.google.android.play.core.review.ReviewInfo;
import com.google.android.play.core.review.ReviewManager;
import com.google.android.play.core.review.ReviewManagerFactory;
import com.google.android.play.core.tasks.OnCompleteListener;
import com.google.android.play.core.tasks.OnFailureListener;
import com.google.android.play.core.tasks.Task;
public class MainActivity extends AppCompatActivity {
ReviewInfo reviewInfo;
ReviewManager manager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
manager = ReviewManagerFactory.create(this);
findViewById(R.id.btnReview).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Review();
}
});
}
private void Review(){
manager.requestReviewFlow().addOnCompleteListener(new OnCompleteListener<ReviewInfo>() {
@Override
public void onComplete(@NonNull Task<ReviewInfo> task) {
if(task.isSuccessful()){
reviewInfo = task.getResult();
manager.launchReviewFlow(MainActivity.this, reviewInfo).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception e) {
Toast.makeText(MainActivity.this, "Rating Failed", Toast.LENGTH_SHORT).show();
}
}).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Toast.makeText(MainActivity.this, "Review Completed, Thank You! ", Toast.LENGTH_SHORT).show();
}
});
}
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception e) {
Toast.makeText(MainActivity.this, "In-App Request Failed", Toast.LENGTH_SHORT).show();
}
});
}
}Benim uygulamamın çıktısı bu şekilde.
Kaynaklar
Google Play In-App Review API | Android Developers Stackoverflow