Запуск на устройстве
Перед выпуском приложения для пользователей всегда рекомендуется протестировать его на реальном устройстве. Этот документ поможет вам пройти необходимые шаги по запуску приложения React Native на устройстве и подготовке его к производственному использованию.
infoЕсли вы использовали create-expo-app для настройки проекта, вы можете запустить приложение на устройстве в Expo Go, отсканировав QR-код, который отображается при запуске npm start. Для получения дополнительной информации обратитесь к руководству Expo по запуску проекта на устройстве.
- Android
- iOS
Запуск приложения на устройствах Android
ОС разработки
- macOS
- Windows
- Linux
1. Включить отладку по USB
По умолчанию большинство устройств Android могут устанавливать и запускать только приложения, загруженные из Google Play. Для установки приложения во время разработки необходимо включить отладку по USB на вашем устройстве.
Чтобы включить отладку по USB на устройстве, сначала необходимо включить меню «Параметры разработчика», перейдя в Настройки → О телефоне → Информация о программном обеспечении, а затем нажать на строку Build number в нижней части семь раз. После этого вы можете вернуться в Настройки → Параметры разработчика, чтобы включить «Отладку по USB».
2. Подключите устройство по USB
Теперь давайте настроим устройство Android для запуска наших проектов React Native. Подключите устройство по USB к вашей машине разработки.
Теперь проверьте, что устройство правильно подключается к ADB (Android Debug Bridge), запустив adb devices.
$ adb devices List of devices attached emulator-5554 offline # Google emulator 14ed2fcc device # Physical device
Если в правом столбце отображается device, значит устройство подключено. Одновременно должно быть подключено только одно устройство.
3. Запустите приложение
Введите следующую команду в командной строке, чтобы установить и запустить приложение на устройстве:
$ npx react-native run-android
Если вы получите ошибку «Настройка моста недоступна», ознакомьтесь с использованием adb reverse.
Подсказка: Вы также можете использовать
React Native CLIдля генерации и запуска сборкиRelease(например,npx react-native run-android --variant=release).
Подключение к серверу разработки
Вы также можете быстро выполнить итерации на устройстве, подключившись к серверу разработки, работающему на вашей машине разработки. Существует несколько способов сделать это, в зависимости от того, имеете ли вы доступ к USB-кабелю или Wi-Fi-сети.
Способ 1: Использование adb reverse (рекомендуется)
Этот метод можно использовать, если на вашем устройстве установлена Android 5.0 (Lollipop) или более поздняя версия, включена отладка по USB и оно подключено по USB к вашей машине разработки.
Выполните следующую команду в командной строке:
$ adb -s <device name> reverse tcp:8081 tcp:8081
Чтобы найти имя устройства, выполните следующую команду adb:
$ adb devices
Теперь вы можете включить функцию Live перезагрузки из меню разработчика. Приложение будет перезагружаться каждый раз, когда код JavaScript будет изменен.
Способ 2: Подключение через Wi-Fi
Вы также можете подключиться к серверу разработки через Wi-Fi. Сначала вам нужно установить приложение на ваше устройство с помощью USB-кабеля, но после этого вы можете выполнить беспроводную отладку, выполнив эти инструкции. Вам потребуется текущий IP-адрес вашей машины разработки.
Вы можете найти IP-адрес в Системных настройках → Сеть.
- Убедитесь, что ваш ноутбук и телефон подключены к одной Wi-Fi сети.
- Откройте приложение React Native на своем устройстве.
- Вы увидите красный экран с ошибкой. Это нормально. Следующие шаги исправят это.
- Откройте встроенное меню разработчика.
- Перейдите в Настройки разработки → Хост и порт сервера отладки для устройства.
- Введите IP-адрес вашей машины и порт локального сервера разработки (например, 10.0.1.1:8081).
- Вернитесь в меню разработчика и выберите Перезагрузить JS.
Теперь вы можете включить функцию Live перезагрузки из меню разработчика. Приложение будет перезагружаться каждый раз, когда код JavaScript будет изменен.
Сборка приложения для производства
Вы создали замечательное приложение с помощью React Native, и теперь вы жаждете выпустить его в Play Маркет. Процесс аналогичен любому другому приложению для Android, с учетом некоторых дополнительных моментов. Чтобы узнать больше, следуйте руководству по созданию подписанного APK.
1. Включить отладку по USB
По умолчанию большинство устройств Android могут устанавливать и запускать только приложения, загруженные из Google Play. Для установки приложения во время разработки необходимо включить отладку по USB на вашем устройстве.
Чтобы включить отладку по USB на устройстве, сначала необходимо включить меню «Параметры разработчика», перейдя в Настройки → О телефоне → Информация о программном обеспечении, а затем нажать на строку Build number в нижней части семь раз. После этого вы можете вернуться в Настройки → Параметры разработчика, чтобы включить «Отладку по USB».
2. Подключите устройство по USB
Теперь давайте настроим устройство Android для запуска наших проектов React Native. Подключите устройство по USB к вашей машине разработки.
Теперь проверьте, что устройство правильно подключается к ADB (Android Debug Bridge), запустив adb devices.
$ adb devices List of devices attached emulator-5554 offline # Google emulator 14ed2fcc device # Physical device
Если в правом столбце отображается device, значит устройство подключено. Одновременно должно быть подключено только одно устройство.
3. Запустите приложение
Введите следующую команду в командной строке, чтобы установить и запустить приложение на устройстве:
$ npx react-native run-android
Подсказка: Вы также можете использовать
React Native CLIдля генерации и запуска сборкиRelease(например,npx react-native run-android --variant=release).
Подключение к серверу разработки
Вы также можете быстро выполнить итерации на устройстве, подключившись к серверу разработки, работающему на вашей машине разработки. Существует несколько способов сделать это, в зависимости от того, имеете ли вы доступ к USB-кабелю или Wi-Fi-сети.
Способ 1: Использование adb reverse (рекомендуется)
Этот метод можно использовать, если на вашем устройстве установлена Android 5.0 (Lollipop) или более поздняя версия, включена отладка по USB и оно подключено по USB к вашей машине разработки.
Выполните следующую команду в командной строке:
$ adb -s <device name> reverse tcp:8081 tcp:8081
Чтобы найти имя устройства, выполните следующую команду adb:
$ adb devices
Теперь вы можете включить функцию Live перезагрузки из меню разработчика. Приложение будет перезагружаться каждый раз, когда код JavaScript будет изменен.
Способ 2: Подключение через Wi-Fi
Вы также можете подключиться к серверу разработки через Wi-Fi. Сначала вам нужно установить приложение на ваше устройство с помощью USB-кабеля, но после этого вы можете выполнить беспроводную отладку, выполнив эти инструкции. Вам потребуется текущий IP-адрес вашей машины разработки.
Откройте командную строку и введите ipconfig для поиска IP-адреса вашей машины (подробнее).
- Убедитесь, что ваш ноутбук и телефон подключены к одной Wi-Fi сети.
- Откройте приложение React Native на своем устройстве.
- Вы увидите красный экран с ошибкой. Это нормально. Следующие шаги исправят это.
- Откройте встроенное меню разработчика.
- Перейдите в Настройки разработки → Хост и порт сервера отладки для устройства.
- Введите IP-адрес вашей машины и порт локального сервера разработки (например, 10.0.1.1:8081).
- Вернитесь в меню разработчика и выберите Перезагрузить JS.
Теперь вы можете включить функцию Live перезагрузки из меню разработчика. Приложение будет перезагружаться каждый раз, когда код JavaScript будет изменен.
Сборка приложения для производства
Вы создали замечательное приложение с помощью React Native, и теперь вы жаждете выпустить его в Play Маркет. Процесс аналогичен любому другому приложению для Android, с учетом некоторых дополнительных моментов. Чтобы узнать больше, следуйте руководству по созданию подписанного APK.
1. Включение отладки по USB
По умолчанию большинство устройств Android могут устанавливать и запускать только приложения, загруженные из Google Play. Для установки приложения во время разработки необходимо включить отладку по USB на вашем устройстве.
Чтобы включить отладку по USB на устройстве, сначала необходимо включить меню «Параметры разработчика», перейдя в Настройки → О телефоне → Информация о программном обеспечении, а затем нажав на строку Build number в нижней части семь раз. Затем вы можете вернуться в Настройки → Параметры разработчика и включить «Отладка по USB».
2. Подключение устройства через USB
Теперь давайте настроим устройство Android для запуска наших проектов React Native. Подключите устройство через USB к вашей машине разработки.
Далее, определите код производителя, используя lsusb (на macOS необходимо предварительно установить lsusb). lsusb должно вывести что-то вроде этого:
$ lsusb Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 22b8:2e76 Motorola PCS Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Эти строки представляют устройства USB, подключенные к вашей машине.
Вам нужна строка, которая представляет ваш телефон. Если вы сомневаетесь, попробуйте отключить телефон и снова запустить команду:
$ lsusb Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Вы увидите, что после удаления телефона строка с моделью телефона («Motorola PCS» в данном случае) исчезла из списка. Именно эта строка нас интересует.
Bus 001 Device 003: ID 22b8:2e76 Motorola PCS
Из этой строки выберите первые четыре цифры идентификатора устройства:
22b8:2e76
В данном случае это 22b8. Это идентификатор Motorola.
Вам нужно будет ввести его в свои правила udev, чтобы начать работу:
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"' | sudo tee /etc/udev/rules.d/51-android-usb.rules
Убедитесь, что вы заменяете 22b8 полученным выше идентификатором.
Теперь проверьте, правильно ли ваше устройство подключается к ADB (Android Debug Bridge), выполнив команду adb devices.
$ adb devices List of devices attached emulator-5554 offline # Google emulator 14ed2fcc device # Physical device
Если в правом столбце отображается device, значит устройство подключено. Одновременно должно быть подключено только одно устройство.
3. Запуск приложения
Введите следующую команду в командной строке, чтобы установить и запустить приложение на устройстве:
$ npx react-native run-android
Если вы получите ошибку «настройка моста недоступна», см. Использование adb reverse.
Подсказка: вы также можете использовать
React Native CLIдля генерации и запуска сборкиRelease(например,npx react-native run-android --variant=release).
Подключение к серверу разработки
Вы также можете быстро работать на устройстве, подключившись к серверу разработки, работающему на вашей машине разработки. Есть несколько способов сделать это, в зависимости от того, есть ли у вас доступ к кабелю USB или Wi-Fi сети.
Метод 1: Использование adb reverse (рекомендуется)
Этот метод можно использовать, если на вашем устройстве установлена Android 5.0 (Lollipop) или более поздняя версия, включена отладка по USB, и оно подключено к вашей машине разработки через USB.
Выполните следующую команду в командной строке:
$ adb -s <device name> reverse tcp:8081 tcp:8081
Чтобы найти имя устройства, выполните следующую команду adb:
$ adb devices
Теперь вы можете включить функцию Live Reload в меню разработчика. Ваше приложение будет перезагружаться всякий раз, когда код JavaScript будет изменён.
Метод 2: Подключение по Wi-Fi
Вы также можете подключиться к серверу разработки через Wi-Fi. Сначала вам нужно установить приложение на ваше устройство с помощью кабеля USB, но после этого вы можете выполнить отладку без проводов, следуя этим инструкциям. Вам потребуется текущий IP-адрес вашей машины разработки.
Откройте терминал и введите /sbin/ifconfig для определения IP-адреса вашей машины.
- Убедитесь, что ваш ноутбук и телефон подключены к одной и той же Wi-Fi сети.
- Откройте приложение React Native на вашем устройстве.
- Вы увидите красную ошибку. Это нормально. Следующие шаги позволят это исправить.
- Откройте встроенное меню разработчика.
- Перейдите в Настройки разработчика → Хост и порт сервера отладки для устройства.
- Введите IP-адрес вашей машины и порт локального сервера разработки (например, 10.0.1.1:8081).
- Вернитесь в Меню разработчика и выберите Перезагрузить JS.
Теперь вы можете включить функцию Live Reload в меню разработчика. Ваше приложение будет перезагружаться всякий раз, когда код JavaScript будет изменён.
Создание приложения для производства
Вы создали отличное приложение с помощью React Native, и теперь вы жаждете опубликовать его в Play Store. Процесс аналогичен любому другому приложению для Android, но с некоторыми дополнительными моментами. Следуйте руководству по созданию подписанного APK-файла, чтобы узнать больше.
Запуск приложения на устройствах iOS
Операционная система разработки
- macOS
- Windows
- Linux
1. Подключение устройства через USB
Подключите устройство iOS к вашему Mac с помощью кабеля USB-Lightning. Перейдите в папку ios в проекте, затем откройте файл .xcodeproj, или, если вы используете CocoaPods, откройте .xcworkspace в Xcode.
Если это ваш первый запуск приложения на устройстве iOS, вам может потребоваться зарегистрировать ваше устройство для разработки. Откройте меню Product в строке меню Xcode, затем перейдите в Destination. Найдите и выберите ваше устройство из списка. Xcode зарегистрирует ваше устройство для разработки.
2. Настройка кодирования
Зарегистрируйтесь в аккаунте разработчика Apple, если у вас его еще нет.
Выберите ваш проект в навигаторе проекта Xcode, затем выберите ваш основной целевой объект (он должен иметь то же имя, что и ваш проект). Найдите вкладку "General". Перейдите в "Signing" и убедитесь, что ваш аккаунт разработчика Apple или команда выбраны в раскрывающемся списке "Team". Сделайте то же самое для тестового целевого объекта (он оканчивается на "Tests" и находится ниже основного целевого объекта).
Повторите этот шаг для тестового целевого объекта в вашем проекте.
3. Сборка и запуск приложения
Если все настроено правильно, ваше устройство будет отображено как целевой объект сборки в строке инструментов Xcode, а также появится в панели "Устройства" (⇧⌘2). Теперь вы можете нажать кнопку Сборка и запуск (⌘R) или выбрать Запуск из меню Product. Ваше приложение будет запущено на вашем устройстве вскоре.
Если у вас возникнут проблемы, ознакомьтесь с документацией Apple по запуску вашего приложения на устройстве.
Подключение к серверу разработки
Вы также можете быстро работать с устройством, используя сервер разработки. Вам нужно только находиться в одной сети Wi-Fi с компьютером. Встряхните устройство, чтобы открыть меню разработчика, затем включите Live Reload. Ваше приложение будет перезагружаться всякий раз, когда код JavaScript изменится.
Устранение неполадок
Если у вас возникнут проблемы, убедитесь, что ваш Mac и устройство находятся в одной сети и могут взаимодействовать друг с другом. Многие открытые беспроводные сети с порталами доступа настроены таким образом, чтобы предотвратить доступ устройств к другим устройствам в сети. В этом случае вы можете использовать функцию личного доступа к Интернету вашего устройства. Вы также можете поделиться подключением к Интернету (Wi-Fi/Ethernet) с вашего Mac на ваше устройство через USB и подключиться к сборщику через этот туннель для очень высокой скорости передачи данных.
При попытке подключения к серверу разработки может отобразиться красная экран с ошибкой, которая гласит:
Подключение к
http://localhost:8081/debugger-proxy?role=clientистекло. Вы запускаете прокси-сервер node? Если вы запускаете на устройстве, проверьте, правильный ли у вас IP-адрес вRCTWebSocketExecutor.m.
Для решения этой проблемы проверьте следующие пункты.
1. Wi-Fi сеть.
Убедитесь, что ваш ноутбук и телефон подключены к одной Wi-Fi сети.
2. IP-адрес
Убедитесь, что скрипт сборки правильно определил IP-адрес вашего компьютера (например, 10.0.1.123).
Откройте вкладку Навигатор отчетов, выберите последнюю Сборку и найдите IP=, за которым следует IP-адрес. IP-адрес, который встраивается в приложение, должен совпадать с IP-адресом вашего компьютера.
Сборка приложения для производства
Вы создали отличное приложение с помощью React Native, и теперь вы хотите выпустить его в App Store. Процесс аналогичен любому другому приложению для iOS, но с некоторыми дополнительными моментами. Следуйте руководству по публикации в Apple App Store, чтобы узнать больше.
Для сборки приложения для устройств iOS требуется Mac. В качестве альтернативы вы можете обратиться к нашему руководству по настройке среды, чтобы узнать, как собрать приложение с помощью Expo CLI, что позволит запустить приложение с помощью приложения-клиента Expo.
Для сборки приложения для устройств iOS требуется Mac. В качестве альтернативы вы можете обратиться к нашему руководству по настройке среды, чтобы узнать, как собрать приложение с помощью Expo CLI, что позволит запустить приложение с помощью приложения-клиента Expo.
© 2022 Facebook Inc.
Licensed under the Creative Commons Attribution 4.0 International Public License.
https://reactnative.dev/docs/running-on-device