Как исправить expo start throwing «Симулятор установлен, но идентифицируется как «com.apple.CoreSimulator.SimulatorTrampoline»; не знаю, что это такое»

#ios #xcode #react-native #expo #simulator

#iOS #xcode #react-native #expo #тренажёр

Вопрос:

Я пытаюсь настроить среду разработки на основе react. Я хотел бы настроить эмулятор iOS (желательно iPhone 10) для запуска моего приложения. Я использую Macbook Pro 2016, работающий под управлением macOS 10.14.3. Я установил свое приложение react-native с помощью команды create-react-native-app (версия 2.0.2). Я также установил XCode с версией 10.2 (10E125). Когда я сканирую QR-код, который генерирует Expo, и запускаю его на своем iPad или устройстве Android, он работает просто отлично, но когда я пытаюсь загрузить эмулятор iOS, нажав i after expo start , он возвращает ошибку

 Trying to open the project in iOS simulator...
Simulator is installed but is identified as 'com.apple.CoreSimulator.SimulatorTrampoline'; don't know what that is.
Simulator not installed. Please visit https://developer.apple.com/xcode/download/ to download Xcode and the iOS simulator. If you already have the latest version of Xcode installed, you may have to run the command `sudo xcode-select -s /Applications/Xcode.app`
  

Я уже пытался запустить команду sudo xcode-select -s /Applications/Xcode.app

Я также попытался запустить команду xcode-select -r

Я также подтвердил, что в моих инструментах командной строки XCode-> Preferences-> Locations выбрано значение «Xcode 10.2 (10E125)».

Ни один из них не сработал.

Я ожидаю, что после нажатия i после expo start загрузки эмулятора iOS. Спасибо.

——РЕДАКТИРОВАТЬ——-

После еще нескольких исследований я обнаружил, что запуск open -a Simulator , а затем запуск expo start загружает приложение на эмулятор и работает для моих целей. Но все же, если я просто запускаю expo start без запуска open -a Simulator , он все равно выдает ту же ошибку. Я хочу спросить, является ли это лучшим, что я собираюсь получить?

Комментарии:

1. ваше решение, которое вы предоставили в редактировании, работает. Большое спасибо. В последнее время в Expo у меня были ошибки, и я не мог найти другого решения.

Ответ №1:

Возможно, вы используете устаревшую версию Expo. У меня возникла эта проблема, когда я загружал чей-то старый репозиторий, используя Expo 27, когда вышла Expo 36. После обновления до последней версии он работает.

Для обновления пакетов в вашем проекте пригодится npm-check-updates .

 npm i -g npm-check-updates # installs ncu globally
ncu -u # updates all dependency versions in your local package.json
npm install # updates the packages in node_modules to match
  

Примечание: Это обновит все ваши зависимости до последней версии. Если вы не хотите этого делать, вы можете найти последнюю версию expo и изменить версию package.json вручную.

Ответ №2:

Я внезапно столкнулся с точно такой же проблемой. Нажатие «Запустить на iOS Simulator» в браузере разработчика Expo работало 2 дня назад, но сегодня не работало. Ваш ключ к использованию open -a Simulator мне все же помог. Я зашел в Xcode и щелкнул меню Xcode> Открыть инструмент разработчика> Симулятор. Это запустило симулятор, а затем я смог нажать «Запустить на iOS Simulator» в браузере разработчика Expo, и он работал, как ожидалось. Если вам не повезло с «запуском на iOS Simulator», я предполагаю, что вы могли бы просто запустить симулятор, загрузить Expo из App Store и просто использовать его оттуда. Ничто из этого не отвечает на вопрос о том, почему возникает ошибка, но, по крайней мере, дает несколько обходных путей для всех, кто может понадобиться. Все, что имеет значение, это то, что в конце концов вы запускаете приложение на симуляторе!

Комментарии:

1. Да, спасибо. open -a Simulator Работает, но я надеюсь, что Expo что-то с этим сделает.