iOSアプリデプロイがうまくいかない場合の原因確認方法 ([端末名] is not available. Please reconnect the device.)
今回はMRTKとAR FoundationでiOSアプリを作成し動作確認する、をネタにする予定でしたがうまくいかなかったので原因確認の過程を残しておきます。
ビルドの準備から原因確認の過程のネタなので、Macの端末でUnityエディタでXcode用のプロジェクトを作成するまでの過程は割愛します。
ビルド実施まで
Unity上でビルドすると下記のようなファイル群がビルド時に指定したフォルダに作成されます。
フォルダ中の.xcodeproj
ファイルをダブルクリックすると、Xcodeが開かれます。
プロジェクトを開いた後、Xcodeビルドを行う前に設定する事項があります。
iOSアプリをビルドするには、アプリに署名が必要です。
XcodeのSigning & Capabilities
タブを選択するとステータスがエラーになっていると思います。
すでにApple IDをXcodeに登録済みの場合はTeamのプルダウンメニューから自分のアカウントを選択します。
登録していない場合は、Add an Account...
からアカウントを登録します。
なお、ベータ版のリリースや、App StoreにアプリをリリースするにはApple Developer Programに入る必要があります。
無事Teamの登録ができると、出ていた警告が消えます。
※消えない場合は自分のアカウントに紐づいている権限が、Build Settings
のSigning
に登録されているものと異なる可能性があります。
次にデプロイする端末を接続します。
LightningケーブルまたはUSB-CケーブルをMacに接続します。
端末を接続した後、Generic iOS Device
を選択すると、接続した端末を選択できるようになります。
この端末が、ビルド後のデプロイ先となる端末です。
デプロイ先の選択が終わったらビルドボタン(右向き三角)を押しビルドとデプロイを行います。
今回、ビルドはすんなり終わりましたが、端末が有効でなく再接続を求められるメッセージが表示されました。
ケーブルの再接続や、PCの再起動を試しましたが状況は変わりませんでした。
原因の確認
Xcodeでは、接続した端末の情報を見ることができます。
上部のメニューからWindows
→Device and Simulators
を選択します。
選択後出てきたウィンドウから接続しているデバイスの状態を確認できます。
今回はいくつかエラーが出ていました。
エラーの内容としては端末のiOS 14.7に対し、Xcodeのバージョンが古いためサポートしていないとのことでした。
インストール済みのXcodeのバージョンは11.4.1、対して最新バージョンは12.5.1と確かにメジャーバージョンが1古いのが原因のようです。
最新バージョンのXcodeはmacOS 11.0以降(Big Sur)が必要ですが、私の保有しているMac Book Air (11-inch Mid 2012)では対応していません。
残念ながら、新しいMac OSのPCを調達しないと、iOSの開発はできなさそうです。
一応、非対応端末にBig Surをインストールする方法もあるようですが、リソース的に無理にインストールするため、開発に使用できるかというと微妙です。