This plugin provide the rate this app functionality into your Cordova/Phonegap application
Issues list and features requests here
- Begging For App Ratings
- Choices And Consequences
- The importance of App Store reviews
- The Rate Friday Initiative
- Prompting for App Reviews
- iOS
- Android
- Blackberry (experimental)
- Windows8 (experimental)
Phonegap / Cordova 3.0.0 or later
-
From github repository:
cordova plugins add https://github.com/pushandplay/cordova-plugin-apprate.git
-
From apache cordova plugins registry:
cordova plugins add org.pushandplay.cordova.apprate
-
From phonegap build add the following to your config.xml:
<gap:plugin name="org.pushandplay.cordova.apprate" />
All %@ patterns in customLocale object will be automatically replaced to your application title
useLanguage {String} null - custom BCP 47 language tag
displayAppName {String} '' - custom application title
promptAgainForEachNewVersion {Boolean} true - show dialog again when application version will be updated
usesUntilPrompt {Integer} 3 - count of runs of application before dialog will be displayed
openStoreInApp {Boolean} false - leave app or no when application page opened in app store (now supported only for iOS)
useCustomRateDialog {Boolean} false - use custom view for rate dialog
callbacks.onButtonClicked {Function} null - call back function. called when user clicked on rate-dialog buttons
callbacks.onRateDialogShow {Function} null - call back function. called when rate-dialog showing
storeAppURL.ios {String} null - application id in AppStore
storeAppURL.android {String} null - application URL in GooglePlay
storeAppURL.blackberry {String} null - application URL in AppWorld
storeAppURL.windows8 {String} null - application URL in WindowsStore
customLocale {Object} null - custom locale object
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.storeAppURL.android = 'market://details?id=<package_name>';
AppRate.preferences.storeAppURL.blackberry = 'appworld://content/[App Id]/';
AppRate.preferences.storeAppURL.windows8 = 'ms-windows-store:Review?name=<the Package Family Name of the application>';
AppRate.promptForRating();
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.promptForRating(true);
var onButtonClicked = function(buttonIndex) {
console.log("onButtonClicked -> " + buttonIndex);
};
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.storeAppURL.android = 'market://details?id=<package_name>';
AppRate.preferences.callbacks.onButtonClicked = onButtonClicked;
AppRate.promptForRating();
AppRate.preferences.useLanguage = 'ru';
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.storeAppURL.android = 'market://details?id=<package_name>';
AppRate.promptForRating();
var customLocale = {};
customLocale.title = "Rate %@";
customLocale.message = "If you enjoy using %@, would you mind taking a moment to rate it? It won’t take more than a minute. Thanks for your support!";
customLocale.cancelButtonLabel = "No, Thanks";
customLocale.laterButtonLabel = "Remind Me Later";
customLocale.rateButtonLabel = "Rate It Now";
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.storeAppURL.android = 'market://details?id=<package_name>';
AppRate.preferences.customLocale = customLocale;
AppRate.promptForRating();
var customLocale = {};
customLocale.title = "Rate %@";
customLocale.message = "If you enjoy using %@, would you mind taking a moment to rate it? It won’t take more than a minute. Thanks for your support!";
customLocale.cancelButtonLabel = "No, Thanks";
customLocale.laterButtonLabel = "Remind Me Later";
customLocale.rateButtonLabel = "Rate It Now";
AppRate.preferences.openStoreInApp = true;
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.storeAppURL.android = 'market://details?id=<package_name>';
AppRate.preferences.customLocale = customLocale;
AppRate.preferences.displayAppName = 'My custom app title';
AppRate.preferences.usesUntilPrompt = 5;
AppRate.preferences.promptAgainForEachNewVersion = false;
AppRate.promptForRating();
var onRateDialogShow = function(callback) {
console.log("onRateDialogShow");
// call this callback when user click on button into your custom rate-dialog
// for example: simulate click on "Rate now" button and display store
callback(3)
};
var onButtonClicked = function(buttonIndex) {
console.log("onButtonClicked -> " + buttonIndex);
};
AppRate.preferences.storeAppURL.ios = '<my_app_id>';
AppRate.preferences.useCustomRateDialog = true;
AppRate.preferences.callbacks.onRateDialogShow = onRateDialogShow;
AppRate.preferences.callbacks.onButtonClicked = onButtonClicked;
// True param show rate-dialog immediately and useful for testing or custom logic
AppRate.promptForRating(true);
ar, bn, ca, cs, da, de, de-AT, el, en, es, fa, fr, he, hi, id, il, ja, ko, nl, no, pa, pl, pt, ru, sk, sl, sv, th, tr, uk, ur, ur-IN, ur-PK, vi, zh-TW, zh-Hans, zh-Hant
// Getting list of names for available locales
AppRate.locales.getLocalesNames();
// Getting locale object by name
AppRate.locales.getLocale('en');
You can add a new translation here: https://crowdin.net/project/apprate-cordovaphonegap-plugin
The Apache 2.0 License