Honmushi blog
Expo を使って iOS シミュレータにビルド済みアプリをインストールする2020/12/01

Expo を使って iOS シミュレータにビルド済みアプリをインストールする

Expoを利用したアプリ開発にて、iOS シミュレータにビルドしたアプリをインストールする手順です。

この場合のビルドも、Expoのサーバにやってもらうことができとても簡単です。

エラーになってインストールできない場合があるので、その時の対処方法も記載しています。参考になれば。

ドキュメント

Expo のドキュメントに書いてある通りです。これを参考にやれば問題なくできます。

https://docs.expo.io/distribution/building-standalone-apps/

Expo サーバでシミュレータ用のビルドを実行

以下のコマンドで、ビルドを開始します。基本的にはExpoサーバにリクエストして、サーバにてビルドが行われます。

expo build:ios -t simulator

Expo のWebコンソールにて、ビルドの状況を確認できます。 終わるまで他のことしましょう。

生成されたAPKをダウンロード

ビルドが終わっていればAPKをダウンロードでき流ようになっています。 ダウンロードできるファイルは圧縮されているので、好きなアプリケーションを使って解凍しましょう。

tar -xvzf app.tar.gz

シミュレータへ D & D

上記で用意したAPKをシミュレータにドラッグアンドドロップすれば、シミュレータへのインストールができます。

以下コマンドでもインストールできるそうです、今度やってみます。

xcrun simctl install booted ./appへのパス 

エラーが出たら

ビルドをリクエストした際のコンソールにも出力されているのですが、シミュレータへのインストール時に以下のエラーが出て失敗する場合があります。

… is damaged and can’t be opened.

ファイルについている属性が邪魔していることが原因です。

ls -l@とかを実行すると、OSごとに特殊な属性を確認できます。 今回はcom.apple.quarantineという属性が邪魔をしているようです。

以下のコマンドで属性を削除して、再度インストールを試してください。 xattr は属性を編集するコマンドで、-r はディレクトリを再帰的に、-d は属性の削除の意味になります。

xattr -rd com.apple.quarantine ./appへのパス

終わりに

こちらも簡単にできました。

アプリ開発の場合、シミュレータでインストールして動作確認。その後、testflight を使って実機へ配布して確認。

問題なければリリースの手順にしています。

それぞれの手順を行うたびに調べるのはめんどくさいので、情報として残しておいていつでも参照できるようにしました。

できれば覚えてしまいたいところですが、結構ややこしい面もあるのでいいかなと思っています。

  • このエントリーをはてなブックマークに追加