🔨
XcodeからiOS実機インストール時にエラーが出る場合の対応
追記(2021-04-27
こっちの方が簡単に解決できるかもです。
背景
iOSアプリが審査でリジェクトされた。特定条件で進行不能になるらしい。
審査時の動作環境は記事当時最新のiOS14.2だった。
手元の端末は14.2より古いものだったのでアップデートしたら、USBで端末をつないだ状態でXcode上のRunを実行してもエラーが出てしまい、インストールに失敗するようになってしまった。
エラーメッセージ
"xxx" is not available. Please reconnect the device.
解決策
- Xcodeのバージョンを使用しているiOSのバージョンと紐付いているものに揃える
- (↑をやっても失敗する場合は)Xcode上でDeviceのUnpairをする
バージョンの対応
どうやらXcodeのバージョンとiOSのバージョンは紐付いているらしい。
Xcode | iOS |
---|---|
11.4 | 13.4 |
11.5 | 13.5 |
11.6 | 13.6 |
11.7 | 13.7 |
12 | 14 |
12.1 | 14.1 |
12.2 | 14.2 |
のようにiOSのバージョン-2のXcodeバージョンだと確実に動く。
つまり今回はiOS14.2に対応しているXcode12.2を入れればよいはず。
他の端末の動作確認で古いXcodeが必要になることがよくあるので、アプリケーション名をXcodeからXcode12.2にリネームして保存。
その後、Xcode12.2でインストールしようとしても同様のエラーが、、なぜ?
DeviceのUnpair
端末を初めてつないで「このコンピュータを信頼しますか?」というメッセージを出たときのXcodeが古いバージョンだと、新しいXcodeを起動して接続しても古いXcodeで接続してる認識になってしまうらしい。
Xcode上にて紐付けを一度外す必要がある。
Window > Devices and Simulators > 左の一覧から自分の端末を選択して右クリック > Unpair Device
これのあと再度接続し直したら無事にインストールできました。
余談
なお動作環境を審査時と同じものにしたけど、リジェクトされた原因のバグは再現できなかった😇
参考
Discussion