Expo + React NativeでIOS ローカルビルド→アップロード
はじめに
expo、react-nativeについてある程度の理解がある人向けです。
macの人向けです。
経緯
なぜ、公式推奨のeas build + expoサーバーでのビルドを使わないのか
eas buildは無料プランだと月30回しかビルドが通らない
(ios, androidは各1回とカウントされるので、
各月15回、その後ios, android同時ビルドにつき3ドル発生)
ただ、ざっくりと
- 不要なライブラリを精査して、アプリの容量を軽くしてくれる。(精査してたらそんなに変わらないかも)
- そのまま、ストアのアップロードまでやってくれる
などと利点も多いので 、余裕があるかたは使用するのが良さそうです。
参考記事: https://zenn.dev/tasugi/articles/6301f7d102a004
eas build + expoサーバービルドをしたい方はこちらへ。
環境
-
M1 mac pro
-
bash
-
node v18.8.0
-
eas-cli 5.6.0
-
"react": "18.2.0",
-
"react-native": "0.72.6",
-
"expo": "^49.0.16",
事前確認
手順の中で
- Expo アカウント
- apple developerアカウント
が必要になります。
事前に作成をお願いします。
また、app.jsonに必要な項目を埋めて下さい
参考
ビルド開始
最初は公式と同じなので
迷ったらこちらへ https://docs.expo.dev/build/setup/
ファイルのルートで作業してください。
1
npm install -g eas-cli
2
eas login
3
eas build:configure
4, ios build
eas build --platform ios --local
ターミナル上で対話型の応答が始まるので、応対して下さい。
基本的にAppleログイン以外はenterで問題ないと思います。
ビルドが通ると
ルート直下に.ipa.ファイルが作成されます。
(./build-**********.ipa など)
5, Transporterをダウンロード
リンクより、Transporterアプリをダウンロードしてください。
6, Transporterにログイン
Transporterを立ち上げると、Appleログインを求められます。
Apple Developerの課金をしているアカウントでログインして下さい。
7, .ipaをApple Store Connectにデリバリ
ログインが終わると写真のような画面になるので、
ウインドウに先ほど作成した.ipaをドラッグアンドドロップしてください。
アプリが追加されます。デリバリのボタンが表示されたら、クリックして下さい。
これで、Apple Store Connectにアプリのデリバリが開始されます。
最後に
だいぶざっくりと、雑にまとめたので、
気が向いたら、詳しく追記していきます。
Discussion