🚅
【Flutter】ipa作成からAppleConnectアップロードまでのワンライナー
FlutterでiOS開発をしていて、テストフライトにアップするコマンド打ってから、家に帰りたい、お風呂に入りたい、飯を食いたい、飲みに行きたいということがあると思います。そこでこのワンライナーを紹介します。一回叩けばあとはPCから離れても大丈夫です。
Flutter大学の例
$ flutter build ipa --dart-define-from-file=dart_defines/prod.json && xcrun altool --upload-app -t ios -f build/ios/ipa/Flutter大学.ipa -u $yourEmail -p $appSpecificPassword
解説
まず、このワンライナーは2つのコマンドを && で繋いで順番に実行しています。
flutter build ipa --dart-define-from-file=dart_defines/prod.json
と
xcrun altool --upload-app -t ios -f build/ios/ipa/Flutter大学.ipa -u $yourEmail -p $appSpecificPassword
です。
1つ目
こちらは基本的なipa作成の flutter build ipa に対してdart_definesを使った環境変数設定のoptionを付け加えたコマンドです。
flutter build ipa --dart-define-from-file=dart_defines/prod.json
2つ目
こちらは、xcrunというXcodeのコマンドラインツールでipaをAppleConnectにアップロードするコマンドです。-u でAppleId、-p でパスワードを設定することで認証し、アップロードできます。以下では$yourEmail、$appSpecificPassword と書いてますが、それぞれ自分の特有のものに変えてください。
xcrun altool --upload-app -t ios -f build/ios/ipa/Flutter大学.ipa -u $yourEmail -p $appSpecificPassword
注意点として、AppleIdはあなたがいつも使うメアドのやつなのですが、パスワードは別だという点です。appSpecificPasswordと書いている通り、このためだけに別のパスワードを作って使います。
以下のドキュメントに従って作成できます。
まとめ
ということで、ワンライナーの紹介とその軽い解説でした。
CodeMagicやGitHub ActionなどのCIを組むのが一番ではありますが、そこまでやらなくてもいいやという人はこちらがおすすめです。要は同じことをCIでもやれば、CI上でもAppleConnectにアップロードできるはずです。
Discussion
React Nativeバージョンはこちら