PC パソコン

Xcode Simulator「launchd failed to respond」の解決方法

XcodeでiOS Simulatorを起動したとき、「launchd failed to respond」と表示され、Simulatorが起動しない、アプリを実行できない、処理が途中で止まることがあります。

このエラーは、Simulator内部の起動管理を担当するlaunchdが正常に応答できないときに発生します。単純な一時停止だけでなく、Simulatorの状態不整合、ランタイムやデバイスデータの破損、Xcode更新後のキャッシュ不整合などが原因になることがあります。

主な原因

  • Simulator内部のlaunchdまたは関連サービスが正常に起動していない
  • 前回のSimulator終了処理が不完全で状態が残っている
  • 特定のSimulatorデバイスデータが破損している
  • XcodeやSimulator Runtime更新後に古いデータが残っている
  • 利用できなくなった古いSimulatorデバイスが残っている
  • macOS側のCoreSimulatorサービスが一時的に不安定になっている

代表的な発生状況

たとえばXcodeからアプリを実行しようとした際、Simulatorの起動途中で次のようなメッセージが表示されることがあります。

launchd failed to respond

Xcodeのアップデート直後、macOS再起動後、異なるiOS Simulator Runtimeへ切り替えた直後などに発生する場合もあります。

最初に確認すること

1. Simulatorの状態を確認する

ターミナルで次のコマンドを実行すると、登録されているSimulatorと現在の状態を確認できます。

xcrun simctl list devices

対象デバイスがBooted、Shutdown、Unavailableのどれになっているかを確認します。

2. Xcodeで選択しているSimulatorを確認する

Xcode上部の実行先から別のiPhone Simulatorへ切り替え、同じエラーが出るか確認します。別デバイスでは正常に起動できる場合、特定のSimulatorデータだけが壊れている可能性があります。

3. Simulator Runtimeを確認する

XcodeのSettingsからComponentsまたはPlatformsを開き、使用しているiOS Simulator Runtimeがインストール済みで利用可能な状態か確認します。Xcodeのバージョンに対応していない古いRuntimeや、不完全なダウンロードが原因になる場合があります。

解決方法1:XcodeとSimulatorを終了して再起動する

まずXcodeとSimulatorを完全に終了してから再度Xcodeを起動します。一時的にCoreSimulatorやlaunchdの状態が停止しているだけなら、これで復旧することがあります。

最初からSimulatorデータを消去する必要はありません。まずは再起動、別Simulatorでの確認、shutdownの順に試すと安全です。

解決方法2:すべてのSimulatorをShutdownする

起動状態が不整合になっている場合は、simctlで一度すべて停止します。

xcrun simctl shutdown all

その後Simulatorを開き直すか、Xcodeからもう一度アプリを実行します。

解決方法3:問題のSimulatorをEraseする

特定のSimulatorだけで発生する場合は、そのデバイスの内容を消去すると改善することがあります。XcodeのDevices and Simulatorsから対象Simulatorを選び、Erase All Content and Settings相当の操作を行います。

コマンドで全Simulatorを初期化する場合は次のようにします。

xcrun simctl shutdown all
xcrun simctl erase all

注意:erase allを実行すると、Simulator内に保存されているアプリ、設定、テストデータなどが消去されます。必要なデータがある場合は実行前に確認してください。

解決方法4:利用できないSimulatorを削除する

XcodeやRuntimeを更新したあと、対応するRuntimeがなくなった古いSimulatorが残っている場合があります。次のコマンドで利用できないデバイスを削除できます。

xcrun simctl delete unavailable

Apple Developer Forumsでも、Simulator関連の整理方法としてこのコマンドが案内されています。

解決方法5:新しいSimulatorを作成する

既存デバイスのデータ破損が疑われる場合は、XcodeのDevices and Simulatorsから新しいSimulatorを作成し、そこでアプリが起動できるか確認します。

新規デバイスで正常に動作する場合は、元のSimulator固有の問題だった可能性が高いです。

解決方法6:Simulator Runtimeを入れ直す

複数のSimulatorで同じ症状が出る場合は、使用しているiOS Simulator Runtime側に問題がある可能性があります。XcodeのSettingsにあるComponentsまたはPlatformsから対象Runtimeを確認し、必要に応じて再ダウンロードします。

Xcode自体を更新した直後に発生した場合は、現在のXcodeと利用したいiOS Simulator Runtimeの組み合わせが対応しているかも確認してください。

解決方法7:Macを再起動する

SimulatorだけでなくCoreSimulatorサービス全体が不安定になっている場合、XcodeやSimulatorを終了しただけでは直らないことがあります。その場合はMacを再起動してからXcodeを起動し、再度実行します。

確認用コマンド

Simulatorの状態確認と復旧時によく使うコマンドは次の通りです。

xcrun simctl list devices
xcrun simctl shutdown all
xcrun simctl delete unavailable

最終手段としてSimulator内容を初期化する場合のみ、次を使用します。

xcrun simctl erase all

注意点

  • erase allはSimulator内のデータを削除するため、先に通常の再起動やshutdownを試す
  • 特定デバイスだけで発生するのか、すべてのSimulatorで発生するのかを切り分ける
  • Xcode更新直後はSimulator Runtimeとの対応状況を確認する
  • 古い記事で紹介されているSimulator関連フォルダの手動削除は、現在の環境では必要性を確認してから行う

まとめ

「launchd failed to respond」は、Simulator内部のlaunchdやCoreSimulator周辺が正常に起動できていないときに発生するエラーです。

まずXcodeとSimulatorの再起動 → xcrun simctl shutdown all → 別Simulatorで確認の順に試し、特定デバイスに問題がある場合はEraseまたは新規Simulator作成を行います。複数デバイスで発生する場合は、Runtimeの再確認やMacの再起動まで進めると切り分けやすくなります。