React Native BUILD SUCCEED, но "Нет устройств загружены".

Здесь моя среда:

➜  AwesomeProject node --version
v6.3.0
➜  AwesomeProject npm --version
3.10.3
➜  AwesomeProject react-native --version
react-native-cli: 1.0.0
react-native: 0.29.0
➜  AwesomeProject watchman --version
3.0.0

Xcode version 7.3.1

Я создал AwesomeProject, описанный ниже: https://facebook.github.io/react-native/docs/getting-started.html#content

Затем выполните: sudo react-native run-ios

Вот что я получаю:

...
    export SYSTEM_DEVELOPER_USR_DIR=/Applications/Xcode.app/Contents/Developer/usr
    export SYSTEM_DEVELOPER_UTILITIES_DIR=/Applications/Xcode.app/Contents/Developer/Applications/Utilities
    export SYSTEM_DOCUMENTATION_DIR=/Library/Documentation
    export SYSTEM_KEXT_INSTALL_PATH=/System/Library/Extensions
    export SYSTEM_LIBRARY_DIR=/System/Library
    export TAPI_VERIFY_MODE=ErrorsOnly
    export TARGETED_DEVICE_FAMILY=1
    export TARGETNAME=AwesomeProject
    export TARGET_BUILD_DIR=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Products/Debug-iphonesimulator
    export TARGET_DEVICE_MODEL=iPhone7,2
    export TARGET_DEVICE_OS_VERSION=9.3
    export TARGET_NAME=AwesomeProject
    export TARGET_TEMP_DIR=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates/AwesomeProject.build/Debug-iphonesimulator/AwesomeProject.build
    export TEMP_DIR=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates/AwesomeProject.build/Debug-iphonesimulator/AwesomeProject.build
    export TEMP_FILES_DIR=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates/AwesomeProject.build/Debug-iphonesimulator/AwesomeProject.build
    export TEMP_FILE_DIR=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates/AwesomeProject.build/Debug-iphonesimulator/AwesomeProject.build
    export TEMP_ROOT=/Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates
    export TOOLCHAINS=com.apple.dt.toolchain.XcodeDefault
    export TOOLCHAIN_DIR=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
    export TREAT_MISSING_BASELINES_AS_TEST_FAILURES=NO
    export UID=0
    export UNLOCALIZED_RESOURCES_FOLDER_PATH=AwesomeProject.app
    export UNSTRIPPED_PRODUCT=NO
    export USER=root
    export USER_APPS_DIR=/var/root/Applications
    export USER_LIBRARY_DIR=/var/root/Library
    export USE_DYNAMIC_NO_PIC=YES
    export USE_HEADERMAP=YES
    export USE_HEADER_SYMLINKS=NO
    export VALIDATE_PRODUCT=NO
    export VALID_ARCHS="i386 x86_64"
    export VERBOSE_PBXCP=NO
    export VERSIONPLIST_PATH=AwesomeProject.app/version.plist
    export VERSION_INFO_BUILDER=root
    export VERSION_INFO_FILE=AwesomeProject_vers.c
    export VERSION_INFO_STRING="\"@(#)PROGRAM:AwesomeProject  PROJECT:AwesomeProject-\""
    export WRAPPER_EXTENSION=app
    export WRAPPER_NAME=AwesomeProject.app
    export WRAPPER_SUFFIX=.app
    export WRAP_ASSET_PACKS_IN_SEPARATE_DIRECTORIES=NO
    export XCODE_APP_SUPPORT_DIR=/Applications/Xcode.app/Contents/Developer/Library/Xcode
    export XCODE_PRODUCT_BUILD_VERSION=7D1014
    export XCODE_VERSION_ACTUAL=0731
    export XCODE_VERSION_MAJOR=0700
    export XCODE_VERSION_MINOR=0730
    export XPCSERVICES_FOLDER_PATH=AwesomeProject.app/XPCServices
    export YACC=yacc
    export arch=x86_64
    export diagnostic_message_length=124
    export variant=normal
    /bin/sh -c /Users/glaksmono/Documents/React/AwesomeProject/ios/build/Build/Intermediates/AwesomeProject.build/Debug-iphonesimulator/AwesomeProject.build/Script-00DD1BFF1BD5951E006B06BC.sh
Skipping bundling for Simulator platform

=== BUILD TARGET AwesomeProjectTests OF PROJECT AwesomeProject WITH CONFIGURATION Debug ===

Check dependencies

** BUILD SUCCEEDED **

Installing build/Build/Products/Debug-iphonesimulator/AwesomeProject.app
No devices are booted.
Launching org.reactjs.native.example.AwesomeProject
No devices are booted.

И симулятор iOS iPhone 6 просто показывает черный экран.

Идеи?

Ответы

Ответ 1

При нажатии react-native run-ios одна из первых строк, напечатанная на консоли, будет похожа на эту (или аналогичную)

Launching iPhone 6 (10.0)...
  • Загрузите соответствующий симулятор вручную
    • Перейдите в прожекторный поиск и начните вводить симулятор
    • Когда spotlight представляет результат поиска, выберите приложение симулятора и нажмите Enter
    • Перейдите в меню приложения для симулятора: Hardwire → Устройство → iOS 10.0 → iPhone 6 и выберите его
  • Reset
    • Перейдите в меню приложения симулятора: Симулятор → Reset Содержание и настройки...
  • Retry
    • Команда react-native run-ios снова

Ответ 2

Я только что решил тот же вопрос.

Сначала попробуйте использовать react-native run-ios вместо sudo react-native run-ios.

Попробуйте следующее:

В файле AppDelegate.m измените

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];

To:

jsCodeLocation = [NSURL URLWithString:@"http://127.0.0.1:8081/index.ios.bundle?platform=ios&dev=true"];

(Это может быть проблема безопасности с iOS 9);

Затем попробуйте reset ваш env.

Ответ 3

У меня такая же проблема, когда первый раз запускать react-native run-ios Попробуйте Оборудование → Перезагрузите симулятор и запустите его снова.

Ответ 4

Я столкнулся с этой проблемой, когда я запустил react-native run-ios в терминальном мультиплексоре tmux. Я исправил его, запустив react-native run-ios на обычной вкладке терминала без tmux.

Ответ 5

Попробуйте НЕ выполнить команду react-native run-ios как root

Ответ 6

Я перезагрузил симулятор, как было предложено выше, попробовал config reset, но не повезло.

Однако, пока симулятор открыт, я пошел в /Users/username/projectdirectorry/AwesomeProject/ios/build

перетащил AwesomeProject.app на симулятор, и он работает.

Ответ 7

Имел подобную проблему, поэтому я открыл ее в Xcode и построил проект оттуда. Проблема заключалась в том, что ни одно устройство не было выбрано. Xcode скажет вам, что когда вы пытаетесь построить.

Ответ 8

Входите в ту же проблему. Hardware > Restart исправлено.

Ответ 9

Это старый вопрос, но я понимаю, что люди сталкиваются с этим даже сегодня. Опубликовать то, что я видел как решение для меня.

Попробуйте открыть симулятор на вашем Mac как есть без реагирования. Если вы можете открыть симулятор через Xcode, вы сможете открыть его с помощью команды response-native.

Я заметил, что мне нужно освободить системные ресурсы, чтобы иметь возможность открывать любые новые экземпляры симулятора. Я убил несколько процессов, смог открыть симулятор через Xcode, а затем и с помощью native-native тоже.

Удачи!