Xcode 11 に更新すると、シミュレーターの起動が停止する
Xcode 11 ベータ 1 に更新した後、シミュレーターを起動するたびに、次の例外がスローされ、シミュレーターは開始されません。 これはすべてのシミュレーターで発生します。
例外
Foundation.ObjCException: NSInvalidArgumentException: -[SimDevice registerNotificationHandler:]: unrecognized selector sent to instance 0x7ffbf5d1e110
回避策
修正が行われるまで、次の手順に従って、以前のシミュレーター フレームワークを再インストールすることで、開発者が作業を継続できるようにすることができます。
Note
これらの手順では、次の 2 つの Xcode アプリケーションがあることを前提としています。
- Xcode11-beta1.app –シミュレーターおよび Visual Studio for Mac では動作しないベータ版。
- Xcode102.app – 安定バージョンの Xcode 10。 Xcode.app と呼ばれることもあります。
以下のコマンド ラインの例は、ご自分の構成に合わせて変更してください。
xcode-select を使用して Xcode 11 が選択されていることを確認します。
sudo xcode-select -s /Applications/Xcode11-beta1.app/Contents/Developer/
必要に応じて、セットアップ ツールを初めて実行します。
/Applications/Xcode11-beta1.app/Contents/Developer/usr/bin/xcodebuild -runFirstLaunch
次のフレームワークを削除します。
sudo rm -Rf /Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/*
以前の Xcode バージョンに戻します
sudo xcode-select -s /Applications/Xcode102.app/Contents/Developer/
上記で選択した "以前の" Xcode バージョンの最初の起動ツールを再実行します
/Applications/Xcode102.app/Contents/Developer/usr/bin/xcodebuild -runFirstLaunch
これらの手順を実行すると、iOS シミュレーターを再度使用できるようになります。