メモ > 技術 > IDE: Xcode > トラブル
トラブル
■SwiftUIで開発時、プレビューが表示されない
Xcodeの「General -> Display Name」で「shoppinglist」を「Shopping List」に変更すると、
プレビューを表示させる際に
「Failed to build the scheme “shopping list”」
のエラーが出るようになった(プレビューの表示には失敗する)
また、エラーの詳細を確認すると
「Cannot load module ‘ShoppingList’ as ‘shopping list’」
となっている
以下の方法でアプリ名を変更すればエラーにならなかった
具体的にはInfo.plistに「Bundle display name」の項目を追加し、アプリ名を指定した
Display Name の変更は良くない方法みたい?
iOS開発でホーム画面に表示するアプリ名を変更する方法 - Reasonable Code
https://reasonable-code.com/ios-app-home-name-change/
Xcode13でInfo.Plistがない。どこ? - Qiita
https://qiita.com/john-rocky/items/0d7bf4428f013feba64c
iOSでホーム画面に表示されるアプリ名はどこで決まるのか?変更するには? - Qiita
https://qiita.com/temoki/items/fc3b62bc088f96184f8f
■ビルド時、「private key is not installed in your keychain」のようなエラーが表示される
他端末で作成された鍵ファイルが無いので、持ってくる必要がある
鍵のある環境でキーチェーンアクセスを起動し、「自分の証明書」を確認する
対象の証明書を確認する
先頭の「>」をクリックすると、その中に秘密鍵も確認できる。
証明書と秘密鍵を選択して「ファイル → 書き出す」とする
p12ファイルが作成できるので、これを問題のある環境に渡す
p12ファイルをダブルクリックすると、キーチェーンアクセスに登録される
キーチェーンアクセスの「証明書」内の一覧を確認すると証明書が追加されていた。先頭の三角をクリックすると鍵のアイコンを確認できる
※書き出し時にパスワードを設定した場合、そのパスワードも渡す
古いMacから新しいMacへ鍵付き証明書を持ってくる
https://zenn.dev/welchi/articles/xcode-revoke-certificate
■実機書き出し時、「An error was encountered while attempting to communicate with this device.」のようなエラーが表示される
以下で解消することがある
・クリーンとビルドを試す
・Xcodeを再起動する
・iPhoneを再起動する
【Xcode9】An error was encountered while attempting to communicate with this device.のエラーが出た場合の対処方法【iOS11】 | ニートに憧れるプログラム日記
http://program-life.com/227
■実機書き出し時、「iPhone is busy: Preparing debugger support」のようなエラーが表示される
上と同じ内容を試す
【Xcode】”〜のiPhone is busy: Preparing debugger support for 〜のiPhone”というエラーを解消出来るかもしれない方法 - ぱふの自由帳
https://pafu-of-duck.hatenablog.com/entry/2018/03/08/232033
■実機書き出し時、「iPhone is busy: Xcode will continue when iPhone is Finished」のようなエラーが表示される
「10〜15分ほど待つ」と紹介されている
追加のデータをAppleのサーバからダウンロードしている…などかもしれない
実際、クリーンとビルド、XCodeの再起動、iPhoneの再起動を試しても駄目だったが、5分ほど待つと実機書き出しが完了した
Xcode will continue when iPhone is Finished | ITechBrand.com
https://itechbrand.com/xcode-will-continue-when-iphone-is-finished/
iPhoneをiOS12.0.1にアップデートしたらXcodeで「iPhone is busy: Preparing debugger support for iPhone」が表示される場合の対処法 - AppSeedのアプリ開発ブログ
https://develop.hateblo.jp/entry/xcode-iphone-os-update-busy
■実機書き出し時、「iPhone is busy: Making the device ready for development」のようなエラーが表示される
何時間待っても進まなかった
Xcodeをアップデートし、改めて書き出しを試すと解消できたみたい
■実機書き出し時、「Errors were encountered while preparing your device for development. Please check the Devices and Simulators Window.」のようなエラーが表示される
アプリの削除とiPhoneの再起動で解消できたが、後者だけで十分だったかも
【Xcode】iPhoneへのビルドエラー対処法 - アプリ開発で老後の副業を目指すブログ
https://rougo-fukugyo.com/archives/3413
■実機書き出し時、「failed with a nonzero exit code」のようなエラーが表示される
アプリの表示名を変更してアイコンを設定したときに発生した
「ライブラリがおかしい」のような表示もあったが、Xcodeで
「Product → Crean Build Folder」
としてから
「Product → Build」
とすればインストールできた
よく判らないエラーが表示されたら、基本的にまずは「クリーンとビルドを試す」とすれば良さそう
Command 〜 failed with a nonzero exit code - Qiita
https://qiita.com/fuwamaki/items/1638ab79c32467a9f94b
■実機書き出し時、「maximum number of apps」のようなエラーが表示される
【swift】実機テストで「The maximum number of apps for free development profiles has been reached.」というエラーが発生
http://pg.kdtk.net/1369
■実機書き出し時、キーチェーン「access」のパスワードを何度も求められる
5つほど同じダイアログが開いているみたい
すべてのダイアログでMacのログインパスワードを入力し、すべて「常に認証」にすれば書き出せた(表記はうろ覚え)
書き出しのために裏側で5つのダイアログが開き、それぞれに対して認証が必要だった…のかも
■実機書き出し時、どうしても書き出せなくて原因不明なら
・端末側でアプリを信頼しているか、「設定 → 一般 → プロファイルとデバイス管理」を確認する
・Appleのアカウントが有効期限切れになっていないか確認する
・Appleの規約が更新された場合、改めて規約に同意する必要がある
・MacOSの再インストールからはじめると、すんなり書き出せることがある
Appleの規約が更新された場合、Apple Developer Program にログインすると以下のようなメッセージが表示される
The Apple Developer Program License Agreement has been updated.
In order to access certain membership resources, you must accept the latest license agreement by November 3, 2018.
[Review Agreement]
リンクをクリックすると規約が表示されるので、内容を確認して同意する
なおEnterpriseなど別アカウントを紐付けている場合は、そのアカウント所持者に連絡を取るようにメッセージが表示される
The Apple Developer Enterprise Program License Agreement has been updated.
In order to access certain membership resources, Refirio must accept the latest license agreement by November 3, 2018.
[Contact Refirio]
該当アカウントでログインし、リンクをクリックすると規約が表示されるので、内容を確認して同意する