アプリレビュー関係の新機能が続々登場!

先日、 iOS の新しいバージョンである iOS 10.3 がリリースされましたね!ギャップロでも、このリリースに合わせて Alternate Icons の記事を公開させていただきました。
iOS アプリのアイコンを申請なしですぐに変更?! Alternate Icons を試してみた
今回は、同じく iOS 10.3 から追加された レーティング入力用 API をはじめとする、アプリレビュー関係の新機能 を紹介したいと思います。

レビュー周りで追加された機能

今回のバージョンアップで追加・更新されたレビュー周りの機能は、以下の機能です。
  • アプリ内でレーティングを行うための API が追加された
  • App Store のレビュー投稿画面を、アプリから直接開けるようになった
  • レビューに対して、開発者側が返信できるようになった
それでは、一つずつ見ていきましょう!

その1. レーティング入力用の新 API が追加された

iOS 10.3 から追加された SKStoreReviewController を利用することで、アプリ内でレーティングの投稿を促すことができるようになりました。

レーティングのダイアログ表示

これまでは、UIApplication#openURL を利用して、独自に App Store を起動する必要がありました。ですがその方法ですと、ユーザは一度アプリを離れてしまうことになります。 対して、新しく用意されたこの方法を利用することで、 App Store を起動せずとも、レーティングの入力まで行えるようになりました。 これまでの方法と異なり、ユーザの離脱率の低下にも繋がりそうですね!

実装方法

使い方はとても簡単で、数行のコードを追加するだけで利用できます。 とても簡単ですね!!
import UIKit
import StoreKit // import 文を追加.

class ViewController: UIViewController {

    @IBAction func tapButton(_ sender: UIButton) {
        // レビューのアラートを表示.
        SKStoreReviewController.requestReview()
    }
}

注意事項

利用にあたって、いくつかの制限があります。内容を把握した上で、ただしく利用しましょう。
  • iOS 10.3 以降で利用可能
  • SKStoreReviewController は、 iOS 10.3 から追加された API ですので、当然 iOS 10.3 未満では利用できません。 iOS 10.3 未満をサポートする場合は、これまでどおり App Store を起動する方法と併用しましょう。
  • コメントの入力は行えない
  • 現状この方法では、レーティングの入力(☆の入力)までしか行えません。今後はどうなるかわかりませんが、コメントの入力を行なってもらうには、やはり App Store を起動する必要があります。
  • 必ずアラートが表示されるわけではない
  • API を実行しても、実際にアラートが表示されるかどうかは保障されていません。実際に表示されるかどうか、表示の内容がどうなっているか、については App Store のポリシーによって管理されるようです。 そのため「レビュー投稿ボタンをタップしたら API を実行する」のような、明示的なユーザアクションをトリガーにするのは避けた方が良さそうです。

参考

公式のドキュメントには、ガイドラインなども掲載されています。実装前に、まずは一読してみましょう!!

その2. App Store のレビュー投稿画面を直接開けるようになった

前項でご紹介しましたとおり、今回追加された SKStoreReviewController は、 iOS 10.3 未満では利用できません。なので、従来の App Store を起動する方法も併用する必要がありそうです。 ここで紹介するのは、App Store のレビュー投稿画面を、アプリから直接開けるようになった という件についてです。

これまでのやり方

これまでは、皆さんおそらく以下のような方法で App Store を起動していたと思います。
class ViewController: UIViewController {

    let YOUR_APP_ID = "000000000"

    @IBAction func tapButton(_ sender: UIButton) {
        // レビュータブを開くための URL を指定する.
        let urlString = "itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=\(YOUR_APP_ID)"
        if let url = URL(string: urlString) {
            if #available(iOS 10.0, *) {
                UIApplication.shared.open(url, options: [:])
            } else {
                UIApplication.shared.openURL(url)
            }
        }
    }
}

App Store のレビュータブが表示される

ですが、この方法で表示されるのは、App Store のレビュータブ です。実際にレビューコメントを投稿するには、この画面が表示された上でさらにユーザが レビューを書くボタン をクリックする、という1アクションが必要でした。 ファーストビューに含まれるとはいえ、決して見やすい場所やボタンではありませんので、レビューの入力方法がわからず諦めたユーザも多少なりともいるのではないでしょうか。

レビュー投稿画面を直接開く方法

今回、レビュー投稿画面を直接開くための URL が新しく定義されました。 以下のサンプルのように、ストアを開くための URL にパラメータ action=write-review を追加した形です。
class ViewController: UIViewController {

    let YOUR_APP_ID = "000000000"

    @IBAction func tapButton(_ sender: UIButton) {
        let urlString = "itms-apps://itunes.apple.com/jp/app/id\(YOUR_APP_ID)?mt=8&action=write-review"
        if let url = URL(string: urlString) {
            if #available(iOS 10.0, *) {
                UIApplication.shared.open(url, options: [:])
            } else {
                UIApplication.shared.openURL(url)
            }
        }
    }
}
ストアを開くための URL. → itms-apps://itunes.apple.com/jp/app/id000000000?mt=8 パラメータ action=write-review を追加します → itms-apps://itunes.apple.com/jp/app/id000000000?mt=8&action=write-review

App Store のレビュー投稿画面が表示される

この URL を指定することで、直接レビュー投稿画面を表示することができます。 ここまでお膳立てすれば、ユーザはレビューコメントを入力(もしくはレーティングを選択)するだけです。以前の方法と比べて、とてもユーザフレンドリーですね! iOS 10.3 未満で、 App Store にレビュー目的でリダイレクトさせたい場合には、この URL を利用しましょう!

その3. ユーザが投稿したレビューに対して返信できるようになった

iOS 10.3 のリリースに合わせて公開された機能として、 ユーザが投稿したレビューコメントに対して、開発者側が返信できる ようになりました。 Google Play では数年前から返信機能が実装されていましたが、いよいよ App Store でも同じことができるようになりました。 なお、返信されている様子も含めて確認するためには、iOS 10.3 以降の App Store か、OS X 10.6.6 以降の Mac App Store が必要です。

App Store のレビューに返信できる

これまでは、レビューに投稿された不具合や機能改善の要望に対して、開発者側がリアクションする手段がなかったため、一方的に書き込まれるだけでした。 今後は、不具合報告に対して詳細情報をやりとりしたり、改善要望に対してロードマップを伝えたりすることができますね!

返信は iTunesConnect から

開発者がレビューに対して返信する場合は、 iTunesConnect から行います。 マイ App から該当するアプリを選択し、アクティビティ評価とレビュー を選択してください。各レビューに対して、 返信ボタン が新たに追加されてるのが確認できると思います。

それでは、早速返信ボタンを押して返信コメントを入力して見ましょう。

入力したコメントは、保留状態を経てストアに反映されます。 ドキュメントを確認する限り、反映には最大で24時間かかるということでしたが、実際に試したところ6時間程度で反映されたことが確認できました。

返信コメントで、ユーザにも通知が届く

レビューに対して返信コメントを入力すると、レビューを行なったユーザに通知メールが送信されます。 通知を受け取ったユーザは、さらにそこから レビューの更新 を行なったり、開発者に問い合わせを行なったりすることができるようです。誠意を持って対応と返信を行えば、ネガティブなレビューを入れたユーザも、ポジティブなコメントやレーティングに更新してくれるかもしれないですね!

ユーザがレビュー更新したら、通知を受け取る

さらにさらに、ユーザがレビューを更新してくれた場合に、開発者側が通知を受け取ることもできます。 ユーザと役割 から通知を受けたい管理ユーザを選択し、 通知タブ を選択します。この画面の デベロッパの回答はい を選択します(デフォルトは いいえ になっています)。

これで、ユーザからのさらなる不具合報告や、改善確認の報告などを見逃さずにキャッチアップできますね!うまく利用することで、アップデート対応の速度アップも見込めるのではないでしょうか!

まとめ

今回のレビュー関係の追加機能は、開発者・運用者・ユーザ、それぞれにメリットがあるものであると思います。
API の追加がきっかけで、レビューの活性化が見込めるでしょう。返信機能に関しては、好意でレビューコメントしてくれたユーザは、レスポンスがあれば嬉しいでしょうし、悪意のあるレビューコメントに対しての牽制にもなるのではないでしょうか。
うまく利用して、他のアプリに差をつけましょう!