Flutter: MacOSのデスクトップアプリのApp Store Connectへの送信完了後、「Cannot be used with TestFlight」の警告が出る
結論:MacのOSをMontereyにアップグレードし、TestFlightをインストールする
2022/3/17 Flutter エラー・バグ日記
App Store Connectへの送信は成功したが、下記の警告が出ていた。
WARNING ITMS-90889: ""Cannot be used with TestFlight because the bundle at “####.app” is missing a provisioning profile. Main bundles are expected to have provisioning profiles in order to be eligible for TestFlight.""
要は、プロビジョニングプロファイル(provisioning profiles)が無いので、TestFlightは使えないよ、ということらしい。
確かにApp Store Connectで、「TestFlight」のタブの「macOSビルド」を見ると、先ほどアップロードしたビルドのステータスに「テストに使用できません」との表記がある。
このままでも審査には出せるようだが、テストできないのは不安が残る。。
調べたところ、下記情報によると、Xcodeのバージョンが12だと、MacOSアプリの場合は、自動プロビジョニングが機能せず、手動でプロビジョニングプロファイルを読み込む必要があるとのこと。
確かに、自分が使用しているXcodeは、Version 12.5.1。
つまり、Xcodeの「Product」→「Archive」で、App Store ConnectにDistributeするとき、「Automatically manage signing」ではなく「Manually manage signing」を選ばないといけない。
過去、自分でプロビジョニングプロファイルを作成したことがなかったので、下記情報を参考にさせていただきながら、下記のとおり作成。
- Apple Developerにサインインして、「Certificates, Identifiers & Profiles」→「Profiles」で新規作成し、「Distribution」欄で「Mac App Store」を選択。
- 「App ID」で該当アプリのBundle Identifierを選択し、現在使用している「Certificates」を選択。作成されたプロファイルをPCにダウンロード保管。
- Xcodeから再度「Product」→「Archive」でDistributeの手続きを進め、途中で「Manually manage signing」を選んで、「####.app」のプルダウンで、保存したプロファイルのファイルをインポート。
これで警告が出ることなく、アップロードを完了。App Store Connectの「TestFlight」タブ内のステータスも「処理中」という表記で登録された。
しかし、、そもそもTestFlightアプリをMacにインストールするには、「macOS 12.0 Monterey」にする必要があると判明。。下記記事を見て知ったが、そもそもMacOSアプリ用のTestFlightは、最近使えるようになったらしい。
macOSを12.0にアップグレードするには、自分の場合、トータル30Gバイト以上の空きが必要だったので、スペースを空けるのに苦労する。。
何とかMontereyにアップグレードし、TestFlightをインストール。
TestFlightを開くと、通知が来ており、テスト用のアプリをインストール・起動できた。
かなり大変だった。。。
\一般的なエラー対処法をまとめた記事はこちら/
リリースしたアプリ(全てFlutterで開発)
個人アプリ開発で役立ったもの
おすすめの学習教材
\超初心者向けでオススメな元Udemyの講座/
\キャンペーン時を狙えば安価で網羅的な内容が学べる(日本語訳あり)/
\Gitの基礎について無料で学べる/
おすすめの学習書籍
\実用的。image_pickerに関してかなり助けられた/
\Dartの基礎文法を素早くインプットできる/