iOSやAndroidのアプリストア(App Sotre/Google Play)には数百万ものアプリが登録されており、その中で目立つのは非常に難しくなっています。そういった状況の中で、他のアプリと差別化するために大事な施策の一つがレビューです。高評価のレビューが増えることで、アプリストア内での表示順位も上がっていきます。

そこで今回はレビュー機能を提供するCordovaプラグイン三種を比較してみたいと思います(一つは未検証ですが…)。

プラグインについて

比較したプラグインは以下の三つです。

※ すべて 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 でもコードを公開していますのでご自由にお使いください。

今回ご紹介したCordovaプラグインは、サードパーティ製であるためアプリストア版のMonacaデバッガーでは動作しません。動作検証の際にはProプラン以上で利用可能なカスタムビルドデバッガーをご利用ください。