iOSやAndroidのアプリストア(App Sotre/Google Play)には数百万ものアプリが登録されており、その中で目立つのは非常に難しくなっています。そういった状況の中で、他のアプリと差別化するために大事な施策の一つがレビューです。高評価のレビューが増えることで、アプリストア内での表示順位も上がっていきます。
そこで今回はレビュー機能を提供するCordovaプラグイン三種を比較してみたいと思います(一つは未検証ですが…)。
プラグインについて
比較したプラグインは以下の三つです。
- kenmickles/cordova-plugin-request-review(執筆時バージョン:1.0)
- dpa99c/cordova-launch-review(執筆時バージョン:3.1.1)
- pushandplay/cordova-plugin-apprate(執筆時バージョン:1.3.0)
※ すべて Cordova 7.1.0 のプロジェクト上で動作検証しました。
cordova-plugin-request-review
cordova-plugin-request-review
はiOSのみ、またバージョン10以下にしか対応していなかったため、動作レビューについては割愛します。
cordova-launch-review
cordova-launch-review
はシンプルで使い勝手の良いレビュープラグインです。iOS/AndroidそれぞれのアプリIDを指定して LaunchReview.launch()
を実行すると、アプリストアのレビュー投稿画面に遷移します。
const appId = ons.platform.isIOS ? '550941371' : 'mobi.monaca.debugger';
LaunchReview.launch(() => {
ons.notification.alert('レビュー表示が成功しました');
}, (err) => {
ons.notification.alert(`レビュー表示が失敗しました。${JSON.stringify(err)}`);
}, appId);
レビュー投稿画面への遷移に成功したときのコールバックを受け取れますが、複数回呼ばれてしまう仕様になっているようです。そのため、今回作成したサンプルアプリではアラートが2回表示されます。実際にコールバックを利用する際は表示制御の処理が必要になりそうです。
また、LaunchReview.rating()
でアプリ内レビュー機能も利用できます。
if (!ons.platform.isIOS()) {
ons.notification.alert('この機能はiOSのみサポートされています');
return false;
}
LaunchReview.rating(() => {
ons.notification.alert('アプリ内レビューが成功しました');
}, (err) => {
ons.notification.alert(`アプリ内レビューが失敗しました。${JSON.stringify(err)}`);
});
実行するとアプリ内で評価を入力できるダイアログが表示されます。
cordova-plugin-apprate
cordova-plugin-apprate
は多言語対応しており、様々なカスタマイズが可能です。
基本的な使い方は次のように iOS のアプリID、Android の GooglePlay URL を渡して AppRate.promptForRating()
を実行します。
AppRate.preferences.storeAppURL = {
ios: '550941371',
android: 'market://details?id=mobi.monaca.debugger'
};
AppRate.preferences.callbacks.onButtonClicked = function(buttonIndex) {
ons.notification.alert(`${buttonIndex} のボタンが押されました`);
};
AppRate.promptForRating();
そうするとレビューを促すダイアログが表示されます。
「今すぐ評価する」をクリックすると、アプリストアに遷移します。レビュー投稿画面は開かないようです。
また、AppRate.preferences.callbacks.onButtonClicked
でダイアログのボタンが押された際のコールバックを受け取れます。ネガティブな評価(後でする/いえ、結構です)が押された際の handleNegativeFeedback
コールバックと、 レーティングダイアログが表示された際の onRateDialogShow
コールバックが用意されています。
iOS 10.3 以上の場合、 AppRate.preferences.inAppReview = true;
とすることでアプリ内レビュー(年三回まで使える)に切り替えることができるとドキュメントには記載されていますが、筆者環境(iOS 11.2.1)ではアプリストアに遷移してしまいました。
cordova-launch-review
と比べて、確認ダイアログを経由する分、ユーザビリティの高いレビュープラグインと言えそうです。
不具合の少なさ、使い易さといった観点では cordova-launch-review が良さそうです。
多機能さ、カスタマイズできる範囲の広さで言えば cordova-plugin-apprate に軍配が上がる印象です。
皆さんもぜひ実際に利用してみて、各プラグインの使い勝手を試してみてください。
今回のコードは こちらのURL で公開しています。お使いのMonacaアカウントにプロジェクトとして取り込めます。
また、GitHubの goofmint/MonacaAppReview でもコードを公開していますのでご自由にお使いください。