In-App Review API のガイドラインを確認して利用しましょう。
例えば
- レビューのUI(ドキュメントではカードと呼んでいる)を出す前に "Do you like the app?" のような意見を聞く質問を出してはいけない。
- カードに変更を加えたり、上や周りにオーバーレイを出したり、カードを勝手に消してはいけない。
- 過度に出してはいけない。quotaがあり、超えるとカードが出なくなる。
In-App Review API を使うには Google Play Core Library を追加します。
dependencies {
...
implementation "com.google.android.play:core-ktx:1.8.1"
}
Review Flow を開始するには、ReviewManager の requestReviewFlow() を呼び出します。requestReviewFlow() の結果が成功だと ReviewInfo が取得できます。取得した ReviewInfo を使って ReviewManager の launchReviewFlow() を呼び出します。
val manager = ReviewManagerFactory.create(context)
...
private fun startReviewFlow() {
manager.requestReviewFlow()
.addOnCompleteListener { request ->
if (request.isSuccessful) {
val reviewInfo = request.result
manager.launchReviewFlow(activity, reviewInfo)
.addOnCompleteListener {
// レビューフローが終了した
// ユーザーがレビューしたのかしてないのか、
// そもそもカードが表示されたのかどうかは取得できない
// アプリの通常フローを進める
}
} else {
// なにかしら問題があったということだが、
// 結果によらずアプリの通常フローを続ける
}
}
}
In-App Review API からは、ユーザーがレビューしたのかどうか、レビューのカードが表示されたのかどうかは取得できません。
In-App Review API の挙動をテストするにはアプリが Google Play に公開されている必要がありますが、製品版として公開されている必要はなく、internal test tracks や internal app sharing に公開することでテストできます。
また、Unit Test や Instrumentation Test 用に ReviewManager の Fake が用意されています。
val manager = FakeReviewManager(context)
0 件のコメント:
コメントを投稿