All Projects → britannio → In_app_review

britannio / In_app_review

Licence: mit
A Flutter plugin for showing the In-App Review/System Rating pop up on Android, IOS, and MacOS. It makes it easy for users to rate your app.

Projects that are alternatives of or similar to In app review

Flutter wechat ble
ble 4.0 with wechat style api for flutter. flutter版微信api风格的低功耗蓝牙
Stars: ✭ 41 (-51.76%)
Mutual labels:  flutter-plugin
Flutter native ads
Show AdMob Native Ads use PlatformView
Stars: ✭ 63 (-25.88%)
Mutual labels:  flutter-plugin
Intent
A simple Flutter plugin to deal with Android Intents, written with ❤️
Stars: ✭ 79 (-7.06%)
Mutual labels:  flutter-plugin
Flutter branch sdk
Flutter Plugin for create deep link using Brach Metrics SDK. This plugin provides a cross-platform (iOS, Android).
Stars: ✭ 43 (-49.41%)
Mutual labels:  flutter-plugin
Flutterradioplayer
Flutter Radio Player, A Plugin to handle streaming audio without a hassle
Stars: ✭ 59 (-30.59%)
Mutual labels:  flutter-plugin
Stereo
A Flutter plugin for playing music on iOS and Android.
Stars: ✭ 66 (-22.35%)
Mutual labels:  flutter-plugin
Flutter orientation
A Flutter plugin for device's orientation
Stars: ✭ 39 (-54.12%)
Mutual labels:  flutter-plugin
Flutter plugin pdf viewer
A flutter plugin for handling PDF files. Works on both Android & iOS
Stars: ✭ 81 (-4.71%)
Mutual labels:  flutter-plugin
Flutter svg
SVG parsing, rendering, and widget library for Flutter
Stars: ✭ 1,113 (+1209.41%)
Mutual labels:  flutter-plugin
Flutter Otp Authentication
A Flutter based OTP Authentication component, used to verify your mobile number with OTP (One Time Password) using Firebase Authentication.
Stars: ✭ 78 (-8.24%)
Mutual labels:  flutter-plugin
Firebase auth ui
Flutter plugin for Firebase Auth UI. Supports popular auth providers by using native SDK for Android and iOS.
Stars: ✭ 44 (-48.24%)
Mutual labels:  flutter-plugin
Math Metrix
This is Math-Puzzle game made in flutter and available on Playstore & AppStore
Stars: ✭ 48 (-43.53%)
Mutual labels:  flutter-plugin
Flutter Permission Handler
Permission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to request and check permissions.
Stars: ✭ 1,144 (+1245.88%)
Mutual labels:  flutter-plugin
Fluttermidicommand
A Flutter plugin to send and receive MIDI
Stars: ✭ 41 (-51.76%)
Mutual labels:  flutter-plugin
Firebase dart sdk
Unofficial Firebase Flutter SDK. Maintainer: @long1eu
Stars: ✭ 80 (-5.88%)
Mutual labels:  flutter-plugin
Localize and translate
Flutter localization in easy steps, really simple
Stars: ✭ 40 (-52.94%)
Mutual labels:  flutter-plugin
Flutter appavailability
A Flutter plugin that allows you to check if an app is installed/enabled, launch an app and get the list of installed apps.
Stars: ✭ 63 (-25.88%)
Mutual labels:  flutter-plugin
Json to form
A flutter plugin to use convert Json to Form
Stars: ✭ 82 (-3.53%)
Mutual labels:  flutter-plugin
Flutter web auth
Flutter plugin for authenticating a user with a web service
Stars: ✭ 81 (-4.71%)
Mutual labels:  flutter-plugin
Flutter install plugin
A flutter plugin for install apk for android; and using url to go to app store for iOS.
Stars: ✭ 71 (-16.47%)
Mutual labels:  flutter-plugin

in_app_review

tests pub package pub points likes popularity

In-App Review Android Demo In-App Review IOS Demo

Description

A Flutter plugin that lets you show a review pop up where users can leave a review for your app without needing to close your app. Alternatively, you can open your store listing via a deep link.

It uses the In-App Review API on Android and the SKStoreReviewController on iOS/MacOS.

Usage

requestReview()

The following code triggers the In-App Review prompt. This should not be used frequently as the underlying API's enforce strict quotas on this feature to provide a great user experience.

import 'package:in_app_review/in_app_review.dart';

final InAppReview inAppReview = InAppReview.instance;

if (await inAppReview.isAvailable()) {
    inAppReview.requestReview();
}

Do

  • Use this after a user has experienced your app for long enough to provide useful feedback, e.g., after the completion of a game level or after a few days.
  • Use this sparingly otherwise no pop up will appear.

Avoid

  • Triggering this via a button in your app as it will only work when the quota enforced by the underlying API has not been exceeded. (Android)
  • Interrupting the user if they are mid way through a task.

Testing requestReview() on Android isn't as simple as running your app via the emulator or a physical device. See Testing for more info.


openStoreListing()

The following code opens the Google Play Store on Android, the App Store with a review screen on IOS & MacOS and the Microsoft Store on Windows. Use this if you want to permanently provide a button or other call-to-action to let users leave a review as it isn't restricted by a quota.

import 'package:in_app_review/in_app_review.dart';

final InAppReview inAppReview = InAppReview.instance;

inAppReview.openStoreListing(appStoreId: '...', microsoftStoreId: '...');

appStoreId is only required on IOS and MacOS and can be found in App Store Connect under General > App Information > Apple ID.

microsoftStoreId is only required on Windows.

Guidelines

https://developer.apple.com/design/human-interface-guidelines/ios/system-capabilities/ratings-and-reviews/

https://developer.android.com/guide/playcore/in-app-review#when-to-request https://developer.android.com/guide/playcore/in-app-review#design-guidelines

Since there is a quota on how many times the pop up can be shown, you should not trigger requestReview() via a button or other call-to-action option. Instead, you can reliably redirect users to your store listing via openStoreListing().

Testing

Android

You must upload your app to the Play Store to test requestReview(). An easy way to do this is to build an apk/app bundle and upload it via internal app sharing.

Real reviews cannot be created while testing requestReview() and the submit button is disabled to emphasize this.

More details at https://developer.android.com/guide/playcore/in-app-review/test

IOS

requestReview() can be tested via the IOS simulator or on a physical device. Note that requestReview() has no effect when testing via TestFlight as documented.

Real reviews cannot be created while testing requestReview() and the submit button is disabled to emphasize this.

openStoreListing() can only be tested with a physical device as the IOS simulator does not have the App Store installed.

MacOS

This plugin can be tested by running your MacOS application locally.

Cross Platform Compatibility

Function Android IOS MacOS Windows(UWP)
isAvailable()
requestReview()
openStoreListing()

Upvote https://github.com/flutter/flutter/issues/14967 if you're interested in Windows support!

Requirements

Android

Requires Android 5 Lollipop(API 21) or higher and the Google Play Store must be installed.

IOS

Requires IOS version 10.3

MacOS

Requires MacOS version 10.14

Issues & pull requests are more than welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].