- Getting feedback from the users
- App promotion and encourage other users to use the app
This both can be achieved by increasing the users comment on the app store by prompting the user to rate the app after a few days of usage(We don't want to frustrate users with continuous pop-ups)
Previously, there were many libraries such as iRate, etc.
This requires users to leave the application and going to the app-store page of the application to rate/post review for the application. So most of the times user avoid this kind of pop-ups and used to dismiss it as soon as it appears. Ultimately this hits the app's ratings and reviews count.
But now Apple has itself come to rescue by introducing SKStoreReviewController. By introducing SKStoreReviewController, Apple has made the rating process very easy. And to our surprise, all this happens in-app. So user can straight away rate and post comments if he wants to straight away from the app itself.
By just a few steps the user can rate/post a review for the application.
- import StoreKit
- Check if the version is 10.3 and above
- Call SKStoreReviewController.requestReview()
And that's it, very simple, isn't it?
Points to remember,
- Developers should avoid creating custom pop-ups, instead use SKStoreReviewController as per Apples HIG documents
- There is no way to customize the rating pop up, also there is no callback to detect what user have clicked on rating pop up
- Don't call the requestReview() immediately at the launch. Also, it shouldn't be called if it interrupts some user action.
- Always call requestReview() once the user performs some positive actions. This will increase the chance of getting positive reviews
- Keep some track of user actions, once it is achieved request for ratings by calling the API
- Even if you call the requestReview(), it doesn't guarantee that pop up will be displayed straight away, iOS maintains its internal logic whether to display the rating pop up or not
- No matter how many times you call the API, the system will only show up to a maximum of 3 prompts to the same user in a 365-day period
- The App store defaults to showing ratings and reviews only for your app's most recent version
- In case of development build, requesting a review will always show the review user interface, but you can't submit an actual review
- In the case of TestFlight, requesting a review will do nothing. So don't panic. In production, it would use Apple's internal logic to show the dialog whenever it is suitable
- Apple has developed this functionality by keeping users in mind, In-app, ratings can be disabled by the user from the Device Settings option ( Settings->iTunes & App Store-> In-App Ratings & Reviews toggle). If the user has turned off this the rating pop up will never be shown to the user.
Manually requesting a review
A developer can add an option to his app settings to ask for ratings/reviews.
This will deep link the user to app's "App Store" page. This can be achieved by the below process,
@IBAction func requestReviewManually() {
// Note: Replace the XXXXXXXXXX below with the App Store ID for your app
// You can find the App Store ID in your app's product URL
guard let writeReviewURL = URL(string: "https://itunes.apple.com/app/idXXXXXXXXXX?action=write-review")
else { fatalError("Expected a valid URL") }
UIApplication.shared.open(writeReviewURL, options: [:], completionHandler: nil)
}
That's it. Hope this is helpful to everyone out there!
Please post comments in case of any queries. Thank you!!
Please post comments in case of any queries. Thank you!!
Comments
Post a Comment