#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 что-то с этим сделает.