仮想と物理とエトセトラ

xRや物理とかごった煮の備忘録的技術ブログ

iOSアプリデプロイがうまくいかない場合の原因確認方法 ([端末名] is not available. Please reconnect the device.)

今回はMRTKとAR FoundationでiOSアプリを作成し動作確認する、をネタにする予定でしたがうまくいかなかったので原因確認の過程を残しておきます。
ビルドの準備から原因確認の過程のネタなので、Macの端末でUnityエディタでXcode用のプロジェクトを作成するまでの過程は割愛します。

ビルド実施まで

Unity上でビルドすると下記のようなファイル群がビルド時に指定したフォルダに作成されます。 フォルダ中の.xcodeprojファイルをダブルクリックすると、Xcodeが開かれます。
f:id:napo909:20210815172616p:plain

プロジェクトを開いた後、Xcodeビルドを行う前に設定する事項があります。
iOSアプリをビルドするには、アプリに署名が必要です。
XcodeSigning & Capabilitiesタブを選択するとステータスがエラーになっていると思います。
f:id:napo909:20210815165229p:plain

すでにApple IDをXcodeに登録済みの場合はTeamのプルダウンメニューから自分のアカウントを選択します。
登録していない場合は、Add an Account...からアカウントを登録します。
f:id:napo909:20210815165523p:plain

なお、ベータ版のリリースや、App StoreにアプリをリリースするにはApple Developer Programに入る必要があります。

developer.apple.com

無事Teamの登録ができると、出ていた警告が消えます。
※消えない場合は自分のアカウントに紐づいている権限が、Build SettingsSigningに登録されているものと異なる可能性があります。
f:id:napo909:20210815165704p:plain

次にデプロイする端末を接続します。
LightningケーブルまたはUSB-CケーブルをMacに接続します。
端末を接続した後、Generic iOS Deviceを選択すると、接続した端末を選択できるようになります。
この端末が、ビルド後のデプロイ先となる端末です。
f:id:napo909:20210815170114p:plain

デプロイ先の選択が終わったらビルドボタン(右向き三角)を押しビルドとデプロイを行います。
今回、ビルドはすんなり終わりましたが、端末が有効でなく再接続を求められるメッセージが表示されました。
ケーブルの再接続や、PCの再起動を試しましたが状況は変わりませんでした。
f:id:napo909:20210815170238p:plain

原因の確認

Xcodeでは、接続した端末の情報を見ることができます。
上部のメニューからWindowsDevice and Simulatorsを選択します。
f:id:napo909:20210815170414p:plain

選択後出てきたウィンドウから接続しているデバイスの状態を確認できます。
今回はいくつかエラーが出ていました。
エラーの内容としては端末のiOS 14.7に対し、Xcodeのバージョンが古いためサポートしていないとのことでした。
f:id:napo909:20210815170729p:plain

インストール済みのXcodeのバージョンは11.4.1、対して最新バージョンは12.5.1と確かにメジャーバージョンが1古いのが原因のようです。
最新バージョンのXcodemacOS 11.0以降(Big Sur)が必要ですが、私の保有しているMac Book Air (11-inch Mid 2012)では対応していません。
残念ながら、新しいMac OSのPCを調達しないと、iOSの開発はできなさそうです。
一応、非対応端末にBig Surをインストールする方法もあるようですが、リソース的に無理にインストールするため、開発に使用できるかというと微妙です。

myzwtk.hatenablog.com

毎年、9月以降に新型が出ているので、Apple Silicon搭載のMacを新しく調達しようかな。。。

japanese.engadget.com