-
Notifications
You must be signed in to change notification settings - Fork 103
App rating flow defaults & configuration
##App Rating Flow Display Logic##
The Apptentive rating flow is designed to display after a certain set of conditions have been met. There are three conditions we keep track of: number of uses
, days since installation
, and significant events
. You will need to call into Apptentive when your app might want to display the rating flow, and Apptentive will display the rating flow if all of these conditions have been met:
- There is an internet connection.
- The number of days before rating has elapsed, or this condition was disabled by setting it to -1.
- The number of uses OR the number of significant events has been met.
If the user sees the rating flow, and decides to have us remind them to rate the app later, different logic is used:
- There is an internet connection.
- The number of days before reminding the user has elapsed.
##App Rating Flow Defaults##
The default conditions for displaying the App Rating Flow are defined in ATAppRatingFlow.h, and are currently:
#define kATAppRatingDefaultDaysBeforePrompt 30
#define kATAppRatingDefaultUsesBeforePrompt 20
#define kATAppRatingDefaultSignificantEventsBeforePrompt 10
which mean, respectively, 30 days of app use before being prompted for feedback, and either 20 uses of the app or 10 significant events. These defaults are subject to change.
#define kATAppRatingDefaultDaysBeforeRePrompting 5
The default number of days between "Remind Me Later" re-prompts is 5 days.
##How is the Apptentive Rating Flow Configured?## To show the rating dialog after a number of significant events have occurred (taking a photo, passing a level, etc), configure the rating flow like so:
ATAppRatingFlow *flow = [ATAppRatingFlow
sharedRatingFlowWithAppID:@"<iTunes App ID Here>"];
flow.significantEventsBeforePrompt = 1;
Then, when a significant event occurs (user takes a photo, passes a level, etc), call:
[flow userDidPerformSignificantEvent:YES viewController:vc];
Where YES indicates that the rating flow dialog can be shown if applicable, and vc is the viewController from which to show the dialog. This will increment a persistent count of the significant events which have occurred. If the necessary conditions have been met, then the rating flow will be initiated and a dialog shown to the user.
Let's say you want to show a rating dialog after the user first takes a photo and we don't care how long the user has been using the app. We'd configure the rating flow like so:
flow.daysBeforePrompt = 0;
flow.significantEventsBeforePrompt = 1;
Then, the first time userDidPerformSignificantEvent:viewController:
is called, the rating dialog asking the user if they're enjoying the app would be displayed.
If a user dislikes a version of the app or says No Thanks to rating it, we wait until the next version of the app to pop up the dialog again.
If a user rates the app, we never show the prompt again.
In order to make sure that feedback is properly associated with your app, you need the app’s Apptentive API key. Once you’ve created an Apptentive account and add an app, you receive this API key
For each app, in order to properly send the user to your app’s ratings page, you need your iTunes App ID. To get this, go to "Manage Your Applications" in iTunesConnect, and click on your application. In the "App Information" section of the page, look for the "Apple ID". It will be a number. This is your iTunes application ID.
That's it! The app name will be whatever the name is that's displayed under the app icon on the phone.