iOS

iOSでコマンドラインで実機にアプリをインストールできる、ios-deployについて

はじめに

  • android 開発の場合、AndroidSDK には、実機をコマンドラインで操作できる adb がついてくるので、アプリ(apk)を、コマンドラインで実機にインストールできます。
  • 一方、iOSSDK にはそのようなコマンドラインツールはついてこないので、アプリ(ipa)を実機にインストールするときは、いちいちXCodeを開いてインストールする必要があります。
  • そんなときに、ios-deploy という便利コマンドラインを使うと、 ipa ファイルをコマンドラインで実機にインストールすることができます。

install

npm install -g --unsafe-perm=true ios-deploy
  • --unsafe-permについて このフラッグをつけないと、下記のようなエラーがでるので、対象のOSの人はつけてください。 You are on OS X 10.11 El Capitan or greater, you may need to add the !!!! WARNING: `--unsafe-perm=true` flag when running `npm install` !!!! WARNING: or else it will fail. !!!! WARNING: link: !!!! WARNING: https://github.com/phonegap/ios-deploy#os-x-1011-el-capitan

ipaのインストール

  • 事前に実機を USBケーブルでつないでおいてください
  • Developemnt で sign したipaが必要です
$ios-deploy --bundle <path_to_ipa>

ipaのアンインストール

$ios-deploy --uninstall_only --bundle_id <bundle_id>

FAQ

  • 端末の接続を確認するには?
$ios-deploy  --detect
  • 複数の端末を同時につないでいたらどうなるの? → すべての端末にインストールされます
  • 特定の端末にインストールするには? → --id で device id を設定できます

その他

  • ドキュメント的なもの upload できるようなので、便利かも(試していません)
  • ReactNative のフロントエンドと、組み合わせると幸せになれるはず(試していません)
  • fastlane にも、単に ios-deploy を叩く install_on_device という Action が用意されているので合わせて利用すると便利です