⁉️

【iOS】TestFlightで配布するアプリではreviewRequest()が機能しない

2023/04/08に公開

Xcodeから実機ビルドした際にはレビューリクエストの表示が出たのに、TestFlightで配布したアプリではレビューリクエストが表示されない現象になり、ロジックを確認したりと少しハマってしまい調べました。

環境

  • Xcode 14.2
  • iOS 16.2
  • TestFlight 3.3.0

試したこと

レビューリクエストを促す処理は、ユーザー体験を損ねないように様々な条件で行うと思います。

しかし、原因を切り離すためにレビューリクエストを促す際の複雑なロジックは取り除いて、下記のようにボタンを押すだけでレビューリクエストが表示されるようなシンプルな処理に変更して試したのですが、

Button("Request review") {
    requestReview()
}

やはり、TestFlightで配布したアプリでは表示を確認出来ませんでした。

原因

ドキュメント内に丁寧に注釈として書いてありました😇
https://developer.apple.com/documentation/storekit/skstorereviewcontroller/2851536-requestreview

アプリが開発モードのときにこのメソッドを呼び出すと、ユーザーインターフェイスとエクスペリエンスをテストできるように、評価とレビューのリクエストビューが常に表示されます。
ただし、このメソッドは、TestFlightを使用して配布するアプリで呼び出すと効果がありません。

ただし、このメソッドは、TestFlightを使用して配布するアプリで呼び出すと効果がありません。

はい、効果がないので表示されません。

おわりに

TestFlightという名前ではありますが、レビューリクエストに関するテストは行えませんでした。

動作確認用にTestFlightでアプリを配布するケースでは、レビューリクエストが表示されないことは事前にテスターと共有が必要ですね。

そして、ドキュメントは大切。

同じようにハマってしまった方の救いになればと思います。

lilossa-banner

参考

https://developer.apple.com/documentation/storekit/skstorereviewcontroller/3566727-requestreview
https://zenn.dev/littleossa/articles/8abbf621963922

Discussion