, если не удалось найти, симулятор все еще сохраняется после замены следующих строк кода в runSimulator.js.
Путь для runSimulator.js -> / node_modules / реагировать-native / local-cli / runIOS /findMatchingSimulator.js
if (!version.startsWith('iOS') && !version.startsWith('tvOS')) { continue; }
с этим
if ( !version.startsWith('com.apple.CoreSimulator.SimRuntime.iOS') && !version.startsWith('com.apple.CoreSimulator.SimRuntime.tvOS') ) { continue; }
комментируйте следующие строки после замены
if ( simulator.availability !== '(available)' && simulator.isAvailable !== 'YES' ) { continue; }
и 2-го подходапосле обновления до XCode 11
Xcode 11 xcrun возвращает true или false, а не YES или NO для свойства isAvailable, как раньше.Вы можете проверить, что с помощью следующей команды
xcrun simctl list devices --json
выше команда напечатает все доступные устройства, например:
com.apple.CoreSimulator.SimRuntime.iOS-12-2" : [
{
"state" : "Booted",
"isAvailable" : true,
"name" : "iPhone X",
"udid" : "E53748D1-628B-4A99-A419-4D7AE7CE4745"
}
]
Замените YES на true вследующий код
if ( simulator.availability !== '(available)' && simulator.isAvailable !== 'YES' ) { continue; }
вот так
if ( simulator.availability !== '(available)' && simulator.isAvailable !== true ) { continue; }