ObjecTips

基本Objective-Cで iOS とか OS X とか

This app could not be installed at this time. のエラー対応

Xcode + iOS Simulator ででたまに遭遇するアプリが起動しない以下のエラー。

This app could not be installed at this time.

クリーンビルドするとか Xcode や Mac を再起動するなどいくつか紹介されているけど他の方法も見つけたので1つの解決の例としてメモしておく。
ヒントは Stack Overflow の回答にあった。

stackoverflow.com

Stack Overflow によれば ~/Library/Logs/CoreSimulator/ にあるログファイル内でエラーを見つけたとの事。
でこのディレクトリを見てみると CoreSimulator.log というファイルを発見。
自分の場合ログファイルには以下のエラーが大量に出ていた。

Apr 13 12:44:13 iMac CoreSimulatorService[12122] <Error>: Error Domain=com.apple.CoreSimulator.SimError Code=164 "Unable to shutdown device in current state: Shutdown" UserInfo={NSLocalizedDescription=Unable to shutdown device in current state: Shutdown}

Simulator がシャットダウン出来ないという事らしい。
そこで iOS Simulator を Quit した状態で Activity Monitor.app でプロセスを見てみたところ com.apple.CoreSimulator.CoreSimulatorServiceSimulator というプロセスが残っているのが確認できた。しかも com.apple.CoreSimulator.CoreSimulatorService がややCPUを利用している状態。
こいつが怪しそうだったのでこのプロセスを Activity Monitor で強制終了して Xcode で再度 Run してみたところ見事にエラーが解消された。

まとめ

  • This app could not be installed at this time. に遭遇したら ~/Library/Logs/CoreSimulator/CoreSimulator.log でエラーを確認して対応に当たる事が出来る。