fluttercommunity / app_review

App Review - Request and Write Reviews and Open Store Listing for Android and iOS in Flutter. Maintainer: @rodydavis
https://fluttercommunity.github.io/app_review/
MIT License
329 stars 109 forks source link

Is it safe to call this on every startup? #16

Closed Theunodb closed 4 years ago

Theunodb commented 4 years ago

Thank you for the package!

Is it safe to call on every startup? Or do we need to keep track if we requested for review before?

Ex. If you do the request on every startup / init, will the user see it every single time? Or do you need to keep track in shared preferences / somewhere to ensure that you only send the request once per version?

Theunodb commented 4 years ago

FYI, its not safe to call on every startup.

On android it takes the user to the store everytime you open the app. For now you need to keep track yourself if it has been shown or not.

obrunsmann commented 4 years ago

@Theunodb Having the same question. I currently only call AppReview.requestReview on iOS. So have you checked if this call might be save if used only on iOS?

Because in my current build I see the popup coming up every time even if I have already rated the app but I am not sure if this is just related to my app ownership or to the ad hoc distribution.

Theunodb commented 4 years ago

@Theunodb Having the same question. I currently only call AppReview.requestReview on iOS. So have you checked if this call might be save if used only on iOS?

Because in my current build I see the popup coming up every time even if I have already rated the app but I am not sure if this is just related to my app ownership or to the ad hoc distribution.

As far as i know On iOS the OS determines when to display the review popup. I can confirm that it doesn’t display every time on iOS for live releases. It does however display on debug for every request.

I ended up keeping track myself just in case

obrunsmann commented 4 years ago

Okay my update is published in the app store. The situation is as follows:

iOS: As the AppReview.requestReview is handled by apple the modal dialog is only shown if the user has not yet rated the app. Otherweise the modal is fully hidden. So it is safe to call this method as often as wanted. In Development and Ad Hoc Builds the Popup shows on every call.

Android: As @Theunodb already told: While android redirects inside the play store page, it is not safe and a massive UX degradation to call this without expected by the user.

rodydavis commented 4 years ago

In my applications i only call the ios on startup and use shared preferences to know when to show android.