Flutter: App Review
Herkese selam! Bu yazımda, Google Play Store ve Apple App Store’da bulunan uygulamalarınızın; kullanıcının mağazaya gitmesine gerek kalmadan uygulama içerisinde oy verebilmesini ve yorum ekleyebilmesini sağlayan bu özellikten bahsedeceğim.
Uygulama içerisinde herhangi bir zamanda inceleme akışı tetiklenebilir. Akış sırasında kullanıcı, 1 ila 5 yıldız arasında kullanıcı dilediği rakamı kullanarak uygulamanızı puanlayabilir ve hatta isterse yorum ekleyebilmektedir. İnceleme kullanıcı tarafından gönderildikten sonra mağazada görüntülenir.
Örnek akışı, aşağıdaki görselde detaylı inceleyebilirsiniz. Görsel Android mağazası olan Google Play’e aittir.
App Review Flutter Paketi
Dart ve Flutter projelerimizde kullanabileceğimiz resmi paket sitesi olan pub.dev içerisinde, App Review özelliği için birden fazla paket bulunmaktadır.
pub.dev arama kısmına “app review” yazdığımız zaman sonuçlarda bulunan paketlerden, in_app_review ve app_review paketlerinin öne çıktığını görüyoruz.
Bu yazımda ise app_review paketinin kullanımından bahsedeceğim. Fakat anlatacağım AppReviewManager sınıf yapısı ile paket değiştirseniz dahi çok az zaman harcayarak kullanmaya devam edebileceksiniz.
Bu paketi tercih etme sebebim ise in_app_review paketinin yaklaşık 10 aydır update almamış olmasından ve app_review paketinin arkasında Flutter Community’sinin olmasından kaynaklanmaktadır. Belki siz bu yazıyı okurken güncelleme almış olabilir :)
Uygulamamıza ekleyelim
İlk olarak App Review özelliğini eklemek istediğimiz Flutter projemizi açıyoruz. Paketin projemize eklenmesi için iki yöntem bulunmaktadır:
İlk yöntem olarak aşağıdaki komutu terminalde çalıştırıyoruz.
flutter pub add app_review
2. yöntem ise, projemizde bulunan pubspec.yaml
dosyamızı açıyoruz ve dependencies
kısmına aşağıdaki kodu ekliyoruz.
dependencies:
app_review: ^2.1.2+1
Ekledikten sonra aşağıdaki komutu terminalde çalıştırmalıyız.
flutter pub get
AppReviewManager sınıfını oluşturalım
Bu kısımda, geliştirmeye başlamadan önce bizim ihtiyacımız olan fonksiyonları taslak olarak oluşturmamız gerekiyor. Örneğin, uygulama içerisinde kullanıcı inceleme akışını görebilmesi için istek atmamız gerekiyor. Bu istek için bir fonksiyon oluşturacağız.
Bu şekilde düşündükten sonra şimdilik ihtiyacımız olan fonksiyonları sınıfımıza ekliyoruz.
DefaultAppReviewManager sınıfını oluşturalım
abstract class
ile oluşturduğumuz fonksiyonlarımızı kullanırken burada ki isimlendirmeler ile çağıracağız. Sırada ise bu fonksiyonların görevlerini vereceğimiz AppReviewManager
sınıfındaki fonksiyonların kullanımına zorlayan bir sınıf yazmak olacaktır.
Fonksiyonlarımızı doldurduktan sonra kullanımına geçebiliriz.
AppReview kullanımı
Fonksiyonları çağırmak istediğimiz sayfada AppReviewManager
tipinde bir değişken oluşturmalıyız.
AppReviewManager appReviewManager = DefaultAppReviewManager();
Ardından tek yapmamız gereken fonksiyonu çağırmak.
onPressed: ()=> appReviewManager.requestReview(),
Farklı paket kullanımı ve refactor kolaylığı
Yazının başlarında da bahsettiğim gibi farklı bir paket kullanmak isterseniz tek yapmanız gereken DefaultAppReviewManager
sınıfı gibi bir sınıf oluşturmak ve yeni oluşturduğumuz sınıftan değişken oluşturmak olacaktır. Fonksiyon ismi aynı olacağı için her yerde değişiklik yapmadan güncellemiş olacağız.
AppReviewManager appReviewManager = InAppReviewManager();
Zamanınızı ayırıp bu yazıyı okuduğunuz için teşekkür ederim, faydalı olması dileğiyle. Team Kraken olarak düzenli bir şekilde paylaşımlarımıza devam edeceğiz.
Bizi aşağıdaki linklerden takip edebilirsiniz.✋🏻
- Team Kraken Twitter hesabı
- Twitter hesabım