Androidのレーティング系ライブラリ、Android-Rateを使ってみた。
評価は重要
アプリをリリースして時間が経つと、Google Playの検索からのDL数はどんどん下がります。検索順位を上げるにはレビューでいい評価をしてもらわないと、DL数は伸びません。基本的に、レビューしてくれるユーザーは、強制終了など不具合を書き込んでくれる人が多いので、悪い評価で埋まってしまいます。アプリを起動した回数が多い人であれば、その人は高評価してくれる確率が高いでので、起動した回数を元に、ヘビーユーザーさんへ、レビューを促すライブラリ、Android-Rateを使ってみました。いざ自分で実装するとなると、時間がかかります。サクッと実装できるのでオススメです。良い評価は検索順位を上げてくれるはずです。
いつもの
compile 'com.github.hotchemi:android-rate:1.0.0'
問題は、初期化処理をどこに書けばいいのか。アプリを起動した回数を元に、レーティングアラートを表示させたいので、MainActivityで初期化すると、別画面から戻ってきた時にカウントされてしまいます。アプリ起動時に1度だけ確実に呼ばれる処理を書くには、独自のApplicationクラスを作成しないといけない。
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="パッケージ名" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:name=".MyApplication" <= ここにファイル名を指定する。 android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
MyApplication.java
import android.app.Application; import android.util.Log; import hotchemi.android.rate.AppRate; import hotchemi.android.rate.OnClickButtonListener; public class MyApplication extends Application { @Override public void onCreate() { AppRate.with(getApplicationContext()) .setInstallDays(0) // default 10, 0 means install day. .setLaunchTimes(1) // 起動した回数を指定することで、レーティングアラートを表示する。 .setRemindInterval(2) // あとで評価するボタンが押された時に、指定した日数後に、もう一度表示。 .setShowLaterButton(true) // あとで評価するボタンを表示させる場合は、true .setDebug(false) // default false .setOnClickButtonListener(new OnClickButtonListener() { // callback listener. @Override public void onClickButton(int which) { Log.d(MainActivity.class.getName(), Integer.toString(which)); } }) .monitor(); } }
setInstallDays(日数)
起動した回数のカウントを、いつから始めるのか日数を設定できる。
0はインストール初日になるらしい。
setLaunchTimes(起動した回数)
起動した回数を指定し、その回数が到来したら、アラートを表示させる。
アラートを表示するための起動数を指定する。
setShowLaterButton(true / false)
今は評価せず、あとで評価するボタンを表示するオプション
setRemindInterval(日数)
あとで評価するボタンを押してから、何日後に表示するか指定する
MainActivityでレーティングのアラートを表示する
AppRate.showRateDialogIfMeetsConditions(this);
ガンガン組み込んでレビューを増やしましょう!