иконка discount

Скидка 15% по промокоду

кибер понедельник до 01.12иконка discount
CYBER2025
логотип PurpleSchool
логотип PurpleSchool

Запуск приложения React Native на устройстве или эмуляторе

Автор

Олег Марков

Введение

Запуск приложения React Native на устройстве или эмуляторе — обязательный этап для каждого мобильного разработчика. Это позволяет вам быстро видеть результат изменений и тестировать функционал, не дожидаясь размещения в App Store или Google Play. Множество разработчиков сталкиваются с вопросами: как правильно настроить среду, какие инструменты использовать, что выбрать — эмулятор или реальное устройство и что делать при появлении ошибок запуска.

Здесь я расскажу, как с нуля развернуть приложение React Native на вашем устройстве или эмуляторе для Android и iOS. Вы получите понятные инструкции, выдержки из кода, а также узнаете нюансы, которые часто упускаются в официальной документации. Также рассмотрим варианты настройки эмуляторов, основные команды CLI, распространённые проблемы и способы их решения.

Настройка среды разработки для React Native

Запуск приложения невозможен без правильной установки необходимых инструментов. Давайте разберём, что вам понадобится и как всё это связать.

1. Node.js и npm/yarn

React Native использует Node.js для разработки. Скачайте Node.js с официального сайта; npm устанавливается вместе с ним. Альтернативный менеджер пакетных зависимостей — Yarn.

Проверьте установку: bash node -v # Проверяет версию Node.js npm -v # Узнаёт версию npm yarn -v # Если используете yarn

2. Expo CLI или React Native CLI

Если вы только начинаете, Expo — лучший вариант: здесь меньше настроек и нет необходимости сразу вникать во внутренности сборки. Для продвинутого контроля используется React Native CLI.

Установка Expo: bash npm install -g expo-cli # Установит Expo CLI глобально

Установка React Native CLI (для Bare Workflow): bash npm install -g react-native-cli # Команда для Bare React Native

3. Android Studio и/или Xcode

Android:

  • Установите Android Studio
  • Обязательно установите Android SDK и Android Virtual Device (AVD) — эмулятор.

iOS:

  • Для macOS: поставьте Xcode из Mac App Store. iOS Simulator поставляется вместе с Xcode.

4. Настройки переменных среды

Для Android пропишите пути к sdk. Например, в .bash_profile или .zshrc: bash export ANDROID_HOME=$HOME/Library/Android/sdk export PATH=$PATH:$ANDROID_HOME/emulator export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/tools/bin export PATH=$PATH:$ANDROID_HOME/platform-tools После изменений перезапустите терминал.

Запуск React Native приложения на устройстве или эмуляторе — важный шаг в процессе разработки. Он позволяет проверить работу приложения в реальных условиях и выявить возможные проблемы. Для успешного запуска необходимо правильно настроить окружение, подключить устройство или эмулятор и запустить приложение с помощью React Native CLI или Expo. Если вы хотите детальнее погрузиться в запуск приложения на устройстве или эмуляторе и другие аспекты разработки React Native, — приходите на наш большой курс React Native и Expo Router. На курсе 184 уроков и 11 упражнений, AI-тренажеры для безлимитной практики с кодом и задачами 24/7, решение задач с живым ревью наставника, еженедельные встречи с менторами.

Запуск приложения на эмуляторе Android

Давайте разберём запуск с помощью эмулятора из Android Studio.

1. Создание проекта

Создайте новый проект: ```bash npx react-native init MyApp # Обычный проект React Native

или

expo init MyApp # Если используете Expo ```

Перейдите в папку проекта: bash cd MyApp

2. Запуск Android эмулятора

Откройте Android Studio > Tools > Device Manager. Создайте и запустите эмулятор с актуальной версией Android.

Запустите эмулятор через терминал (если хотите автоматизировать): bash emulator -avd <Имя_устройства>

3. Запуск приложения на эмуляторе

Для React Native CLI: bash npx react-native run-android

  • Эта команда соберёт приложение и установит его на выбранный эмулятор (или подключённое устройство, если оно есть).
  • Metro Bundler (сервер React Native) запустится автоматически для быстрой перезагрузки приложений.

Для Expo: bash npx expo start

  • Вы увидите QR-код и выбор опций в интерфейсе Packager.
  • В Expo DevTools можно выбрать запуск на эмуляторе (Android emulator):
    • Нажмите «Run on Android device/emulator».

Советы и решения проблем

  • Если команда run-android не находит эмулятор, убедитесь, что AVD запущен и переменные среды android прописаны верно.
  • Иногда помогает перезапуск сервера Metro: bash npx react-native start --reset-cache
  • Убедитесь, что порт 8081 (по умолчанию) не занят другими процессами.

Запуск приложения на эмуляторе iOS

Работа с iOS-технологиями требует Mac и установленного Xcode.

1. Проверка установки

  • Запустите Xcode, согласитесь с лицензией и установите доп.пакеты из Preferences > Components.
  • Откройте терминал и проверьте: bash xcode-select -p # Показывает корневую директорию Xcode xcrun simctl list # Список доступных симуляторов

2. Запуск симулятора

Запустить симулятор происходит автоматически при запуске приложения, но иногда его нужно запустить вручную: bash open -a Simulator

3. Сборка и запуск приложения

React Native CLI: bash npx react-native run-ios

  • Если хотите запустить на определённом симуляторе: bash npx react-native run-ios --simulator="iPhone 14"

Expo: bash npx expo start

  • Откройте Expo DevTools, выберите «Run on iOS simulator».

Полезные мелочи

  • Иногда необходимо почистить старый билд: bash cd ios xcodebuild clean cd ..
  • Если при запуске возникает ошибка об отстутствии разрешения, откройте проект в Xcode и вручную соберите его (Cmd+B).
  • Для дебага используйте React Native Debugger или Chrome DevTools (интегрировано уже в CLI/Expo).

Запуск приложения на физическом устройстве Android

Запуск на реальном устройстве даёт больше информации о поведении приложения, чем эмулятор.

1. Включите режим разработчика и отладку через USB

  • На устройстве найдите «О телефоне», тапните 7 раз по сборке — откроется режим разработчика.
  • Включите «Отладка по USB».
  • Подключите смартфон к компьютеру через кабель.

2. Проверьте подключение

adb devices
  • Должно появиться устройство с состоянием «device».
  • Если система спрашивает разрешение — подтвердите его на экране телефона.

3. Запуск приложения

Как и с эмулятором: bash npx react-native run-android

4. Expo на устройстве

  • Установите приложение Expo Go из Google Play.
  • Введите npx expo start на компьютере — появится QR-код.
  • Откройте Expo Go на смартфоне, просканируйте QR-код — приложение загрузится.

Советы

  • Иногда помогает перезапустить adb: bash adb kill-server adb start-server
  • Проверьте, что используете качественный USB-кабель и выбрали режим передачи данных.

Запуск приложения на физическом устройстве iOS

Для этого вам потребуется Mac и Apple-аккаунт.

1. Настройка устройства

  • Подключите iPhone/iPad к компьютеру.
  • Откройте Xcode, выберите своё устройство как цель (Target).
  • Если подключаете новый iPhone, подтвердите доверие к этому компьютеру.

2. Сборка через Xcode

  • В React Native CLI: откройте папку ios в Xcode (MyProject/ios/MyProject.xcworkspace).
  • Выберите нужный таргет (устройство).
  • Нажмите кнопку Run (Cmd+R).
  • Если первый раз компилируете — Xcode потребует разрешить использование Developer Team.

3. Запуск через Expo

  • Установите Expo Go через App Store.
  • Запустите npx expo start, просканируйте QR-код прямо с iPhone через Expo Go.

Нюансы

  • Для загрузки собственного приложения на устройство Apple требует аккаунт разработчика. Учётки Free Account хватает для теста, но потребуется несколько дополнительных шагов с профилями и сертификатами; если возникают ошибки с provisioning profile — следуйте подсказкам Xcode.
  • Дебажьте через Safari (открыть меню Develop > Simulator/device > Web Inspector).

Горячая перезагрузка и Live Reload

Во время разработки вы оцените возможности горячей перезагрузки (Hot Reload) и живой перезагрузки (Live Reload):

  • Hot Reload — обновляет только измененные модули, не перезапуская всё приложение.
  • Live Reload — полностью перезапускает приложение при сохранении любых файлов.

Выберите нужный режим через «Dev Menu». На эмуляторе вызовите Dev Menu:

  • На Android: Ctrl+M или провестите тремя пальцами вниз
  • На iOS: Cmd+D или тройной тап тремя пальцами

В Expo меню вызывается длинным нажатием на экран или специальной командой через DevTools.

Распространённые проблемы и их решение

1. Приложение не видит эмулятор/устройство

  • Проверьте, что переменные среды прописаны верно.
  • Перезапустите adb: bash adb kill-server adb start-server
  • Перезапустите эмулятор или физическое устройство.

2. Metro Bundler не запускается/зависает

  • Остановите процесс (Ctrl+C), почистите кэш: bash npx react-native start --reset-cache
  • После этого попробуйте снова запустить команду.

3. Код не компилируется для iOS

  • Проверьте, что все зависимости установлены (в директории ios): bash pod install
  • Убедитесь, что используете совместимую версию Xcode.

4. Ошибки при работе с Expo

  • Убедитесь, что Expo Go имеет последнюю версию.
  • Если видите ошибку несовместимости, пересоздайте проект свежими версиями Expo.

5. Port already in use

  • Проверьте, не запущен ли другой сервер на 8081: bash lsof -i :8081 kill -9 <PID>
  • После освобождения порта — повторите попытку запуска Metro.

Заключение

Вы ознакомились с базовыми и продвинутыми способами запуска React Native приложения на эмуляторах и реальных устройствах для обеих платформ — Android и iOS. Мы рассмотрели предварительную настройку среды, ключевые команды, особенности работы с Expo и React Native CLI, а также решения типичных проблем, с которыми сталкиваются разработчики. Теперь вы сможете запускать, тестировать и отлаживать свои мобильные приложения быстрее и увереннее.

Запуск на реальном устройстве это важный шаг, но не стоит забывать и про другие важные этапы разработки. Для разработки полноценного приложения необходимо также уметь управлять состоянием, обеспечивать навигацию и работать с API. На нашем курсе React Native и Expo Router вы найдете все необходимые знания для создания профессиональных React Native приложений. В первых 3 модулях уже доступно бесплатное содержание — начните погружаться в мир React Native прямо сегодня.

Частозадаваемые технические вопросы по теме статьи и ответы на них

Как подключить устройство Android, если оно не отображается в списке adb devices?

  • Проверьте, что включили «Отладку по USB» в настройках разработчика на телефоне.
  • Используйте оригинальный USB-кабель и откройте раздел разработчика — иногда появляется окно подтверждения.
  • Установите драйверы для вашего устройства (особенно для Windows).
  • Выполните: bash adb kill-server adb start-server
  • Если проблема осталась — переподключите устройство и повторите команду.

Как установить приложение на устройство Android без использования команды run-android?

  • Соберите APK: bash cd android ./gradlew assembleDebug APK появится в android/app/build/outputs/apk/debug/app-debug.apk.
  • Установите: bash adb install android/app/build/outputs/apk/debug/app-debug.apk

Почему Expo Go не подключается к локальному серверу?

  • Убедитесь, что телефон и компьютер в одной Wi-Fi сети.
  • Проверьте настройки фаервола/антивируса — они могут блокировать соединение.
  • Попробуйте использовать LAN или Tunnel в Expo DevTools.
  • Иногда подключение работает только через режим Tunnel из Expo (npx expo start --tunnel).

Как эмулировать определённую версию Android или iOS для теста?

  • В Android Studio создайте новый AVD с нужной версией ОС и архитектурой (Tools > Device Manager).
  • Для iOS выберите нужное устройство/версию в Simulator (Hardware > Device) или через параметр CLI: bash npx react-native run-ios --simulator="iPhone 8"

Что делать, если сборка iOS требует Developer Team и выдаёт ошибку "No valid provisioning profile"?

  • Откройте проект в Xcode, зайдите в настройки таргета.
  • В разделе Signing & Capabilities выберите свою учётную запись Apple ID или добавьте её.
  • Если используете Free Account, выберите Automatic Signing. Xcode сам создаст профиль.
Гайд по структуре React Native проектовСтрелочка вправо

Постройте личный план изучения React-native до уровня Middle — бесплатно!

React-native — часть карты развития Mobile

  • step100+ шагов развития
  • lessons30 бесплатных лекций
  • lessons300 бонусных рублей на счет

Бесплатные лекции

Все гайды по React-native

Работа со ScrollView в React NativeРабота с видео в React NativeКак реализовать аудиоплеер на React NativeНастройка и использование input и textinput в React NativeИнтеграция видео плеера в приложение на React NativeИспользование выпадающих списков в React NativeСоздание и настройка native module на React NativeКак создать модальные окна в React NativeРабота с изображениями в React NativeОтображение списков данных в React NativeГайд по файловой системе в React NativeИнтеграция камеры в приложение на React NativeСоздание интерактивных кнопок в React Native
Как использовать векторные иконки в React Native5 популярных библиотек UI компонентов React NativeСоздание и использование tabs в React NativeРуководство по стилизации компонентов в React NativeОптимизация переходов между экранами в React NativeАдаптация safe area context на React NativeОбзор библиотек для навигации в React NativeСоздание сложных анимаций (reanimated) на React NativeИспользование библиотеки стилей Paper в React NativeРуководство по navigation в React NativeОптимизация отображения списков в React NativeКак реализовать linking на React NativeГайд по UI-китам для React NativeГде искать elements для приложения на React NativeРабота с цветами в React Native
Открыть базу знаний

Лучшие курсы по теме

изображение курса

React Native и Expo Router

Антон Ларичев
AI-тренажеры
Практика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.7
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

Основы JavaScript

Антон Ларичев
AI-тренажеры
Практика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.8
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

TypeScript с нуля

Антон Ларичев
AI-тренажеры
Практика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.8
3 999 ₽ 6 990 ₽
Подробнее

Отправить комментарий