【Swift/iOS】レビューリクエストを実装する方法!StoreKit

【Swift/iOS】レビューリクエストを実装する方法!StoreKit

この記事からわかること

  • App Storeアプリレビューリクエスト実装方法
  • Swiftでアプリ内からレビューページに直接遷移させる方法
  • iOS18移行のAppStore.requestReview(in:)使い方

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

iOSアプリでレビューリクエスト

iOSアプリでアプリ内からApp Storeのレビューをリクエストしたい場合はよくあると思います。Swiftでは以下のようなアプリ内から星を選択できるレビューリクエストが簡単に実装できるようになっています。

【Swift/iOS】レビューリクエストを実装する方法!StoreKit

また今回紹介する方法とは別にはなりますがアプリレビューページのURLを取得し、アプリ内から起動させることで直接レビューページに飛ばす方法もあるので参考にしてみてください。

実装方法

レビューリクエストはStoreKitフレームワークのSKStoreReviewController.requestReview(in:)を使用します。引数には表示するための画面としてUIWindowSceneを渡します。

import StoreKit
  
guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else { return }
// レビューリクエストポップアップを表示する
SKStoreReviewController.requestReview(in: scene)

これを呼び出すだけでアプリアイコンと星を入力して送信できるポップアップが表示されユーザーがアプリ内からレビューを投稿できるようになります。

【Swift/iOS】レビューリクエストを実装する方法!StoreKit

Swift UIでの実装

Swift UIの場合はrequestReview環境値を読み取ってRequestのインスタンスを取得しそれを関数として呼び出すことで簡単に実装することもできます。

@Environment(\.requestReview) private var requestReview
RootView()
  .onAppear {
    requestReview()
  }

iOS18以降の実装

レビューリクエストの実装方法はこれまでiOSのバージョンとともに少しずつ変化してきています。

  1. iOS14以前:SKStoreReviewController.requestReview()
  2. iOS14〜18:SKStoreReviewController.requestReview(in:)
  3. iOS18以降:AppStore.requestReview(in:)

iOS18以降の開発であればAppStore.requestReview(in:)を使用するのがよさそうです。

import StoreKit

guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else { return }
AppStore.requestReview(in: scene)

レビューリクエストのガイドライン

レビューリクエストはAppleの掲げているガイドラインに従って実装することが推奨されています。

公式リファレンス:Requesting App Store reviews

レビューリクエストは適切なユーザーに適切なタイミングで表示させることが重要でユーザーに煩わしくない程度に制御する必要があります。

Apple推奨の実装

Appleの公式サイトではレビューリクエストを表示させる条件として「アプリの起動回数」や「バージョンごとに一回」のような制限を付与することを推奨しています。

レビュー依頼をしたい「好評化をつけてくれそうなユーザー」を考えるとある程度アプリを使ってくれた人になるかと思います。そのためアプリの起動回数だけでなく、データの保存数などアプリの活用度に合わせて出してあげるような設計が良さそうです。

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index