Поскольку React Native является мультиплатформенным фреймворком, разделим эту статью на четыре раздела: iOS, Android, Expo и основные команды React Native.

Команды iOS

Эти команды помогут вам в разработке iOS и работе с Xcode.

1. Открыть проект в Xcode

open ios/YourApp.xcworkspace
  • Открывает проект iOS в Xcode, позволяя собирать, запускать и изменять нативные конфигурации iOS.

2. Установить iOS-зависимости

pod-install
  • Устанавливает зависимости CocoaPods, перечисленные в Podfile для iOS-проекта, что гарантирует интеграцию всех необходимых библиотек.

3. Обновить локальный репозиторий CocoaPods 

pod repo update
  • Обновляет локальный репозиторий CocoaPods для получения последних версий зависимостей (pods) перед установкой. Используется при столкновении с ошибкой, связанной с отсутствующими или устаревшими версиями зависимостей.

4. Реинтегрировать iOS-зависимости

pod reingrate
  • Реинтегрирует зависимости CocoaPods в рабочее пространство Xcode, что полезно при возникновении проблем с установленными библиотеками.

5. Установить зависимости из Podfile и обновить локальный репозиторий CocoaPods

pod install - repo-update
  • Устанавливает необходимые зависимости, обновляя локальный репозиторий CocoaPods до последней версии.

6. Очистить iOS-сборку

xcodebuild clean -workspace ios/YourApp.xcworkspace -scheme YourApp -configuration Debug
  • Очищает артефакты iOS-сборки, что часто бывает необходимо при возникновении ошибок сборки.

7. Архивировать iOS-приложение (отправить в App Store)

xcodebuild -workspace ios/YourApp.xcworkspace -scheme YourApp -sdk iphoneos -configuration Release archive -archivePath ios/build/YourApp.xcarchive
  • Подготавливает iOS-приложение к отправке в App Store путем создания архивированной сборки.

8. Собрать в Xcode

xcodebuild -workspace ios/YourApp.xcworkspace -scheme YourApp -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build
  • Собирает iOS-приложение для разработки и тестирования на iOS-симуляторе.

9. Удалить зависимости

rm -rf ios/Pods
  • Удаляет все установленные зависимости CocoaPods из папки Pods.

10. Удалить Podfile.lock

rm -rf ios/Pods
  • Удаляет Podfile.lock, что полезно для сброса pod-настроек перед переустановкой зависимостей.

11. Очистить производные данные

rm -rf ~/Library/Developer/Xcode/DerivedData/*
  • Очищает кэшированные данные Xcode, что полезно для решения проблем с компиляцией или устаревшим кэшем.

12. Перечислить подключенные устройства

xcrun xctrace list devices
  • Перечисляет все подключенные iOS-устройства и симуляторы для тестирования или отладки.

13. Очистить кэш сборки Xcode

rm -rf ~/Library/Developer/Xcode/DerivedData/*
  • Очищает кэш сборки Xcode, чтобы устранить возможные проблемы с кэшированием при сборке.

14. Обновить зависимости

cd ios && pod update
  • Обновляет установленные зависимости CocoaPods до последних версий.

Android

Эти нативные команды помогут при Android-разработке.

14. Запустить Android-приложение 

react-native run-android
  • Создает и запускает Android-приложение на подключенном устройстве или эмуляторе. Это самая распространенная команда для запуска приложения во время разработки.

15. Перечислить открытые устройства

adb devices
  • Перечисляет все Android-устройства и эмуляторы, подключенные к системе. Команда полезна для проверки готовности устройства к тестированию.

16. Очистить Gradle

./gradlew clean
  • Очищает файлы сборки Gradle, удаляя все временные файлы и кэшированные данные, которые могут вызвать проблемы в процессе сборки.

17. Реализовать Gradle-сборку

./gradlew build
  • Компилирует и собирает Android-проект с помощью Gradle, подготавливая приложение к развертыванию или тестированию.

18. Выполнить отладку подключенных устройств

adb logcat
  • Реализует потоковую передачу журналов с подключенных Android-устройств или эмуляторов, что полезно для отладки и мониторинга производительности приложения или обнаружения ошибок.

19. Выполнить отладку подключенных устройств (с фильтрацией журналов приложения)

adb logcat | grep com.app.name
  • Фильтрует вывод журналов для отображения журналов, относящихся к имени пакета вашего приложения. Это помогает быстрее обнаружить проблемы, связанные с приложением.

20. Сгенерировать APK для тестирования

cd android && ./gradlew assembleDebug
  • Генерирует отладочный APK (Android Package Kit — формат файлов для установки Android-приложений), который можно установить на устройства для тестирования. Этот APK содержит дополнительную отладочную информацию.

21. Создать подписанное приложение для производства

cd android && ./gradlew assembleRelease
  • Создает подписанный релизный APK, подходящий для отправки в Google Play Store. Этот APK оптимизирован для производительности и безопасности.

22. Запустить Android-эмулятор

emulator -avd <your_avd_name>
  • Запускает конкретный Android-эмулятор, используя имя вашего AVD (Android Virtual Device — виртуальное Android-устройство).

23. Открыть Android Logcat для отладки

adb logcat *:S ReactNative:V ReactNativeJS:V
  • Открывает logcat Android для подробного ведения журналов. При этом показывает только журналы, связанные с активностью React Native и JavaScript, чтобы отсеять шум и сосредоточиться на релевантных журналах.

24. Удалить приложение с Android-устройства или эмулятора

adb uninstall com.projectname
  • Удаляет приложение с подключенного Android-устройства или эмулятора, используя имя пакета приложения.

25. Установить APK на устройство

adb install path_to_apk.apk
  • Устанавливает определенный APK-файл на подключенное Android-устройство или эмулятор для тестирования или отладки.

26. Запустить команду adb reverse (для отладки устройства)

adb reverse tcp:8081 tcp:8081
  • Устанавливает обратную переадресацию портов, позволяя устройству подключаться к локальному серверу разработки (Metro), запущенному на вашем компьютере. Полезно для отладки на реальных устройствах.

27. Очистить кэш Android-сборки

cd android && ./gradlew cleanBuildCache
  • Очищает кэш Android-сборки, что может решить проблемы, вызванные устаревшими файлами сборки или повреждением кэша при сборке Android-проекта.

React Native

В этом разделе представлены команды CLI React Native.

28. Инициализировать новый проект

react-native init ProjectName
  • Инициализирует новый проект React Native. При этом задается структура проекта и устанавливаются все необходимые зависимости.

29. Запустить проект на iOS

react-native run-ios

30. Запустить проект на Android

react-native run-android

31. Запустить проект на определенном симуляторе iOS

react-native run-ios --simulator="iPhone 14"

32. Установить зависимости проекта

npm install or yarn install
  • Устанавливает все зависимости проекта, перечисленные в файле package.json.

33. Выполнить линковку зависимостей (для версий ниже 0.60)

react-native link
  • Выполняет линковку зависимостей, требуемую для версий React Native ниже 0.60, что позволяет подключить нативные модули к проектам iOS и Android.

34. Разлинковать пакет

react-native unlink package-name
  • Удаляет ссылку на определенный пакет из проекта (работает только в RN 0.60 и более ранних версиях).

35. Открыть DevTools

react-devtools
  • Открывает DevTools React Native и предоставляет инструменты для проверки и отладки компонентов React.

36. Проверить наличие устаревших пакетов

npm outdated or yarn outdated
  • Проверяет наличие устаревших зависимостей в проекте, показывает, какие пакеты имеют более новые версии.

37. Обновить проект до последней версии

react-native upgrade
  • Обновляет версию React Native в проекте до последней стабильной версии. Не стоит использовать эту команду для больших проектов и проектов с несколькими нативными библиотеками.

38. Запустить Metro Bundler

npm start
  • Запускает Metro Bundler, который собирает JavaScript-код для приложения и делает его доступным для разработки. Это необходимо для запуска и тестирования приложения.

39. Очистить кэш и запустить Metro Bundler

npm start --reset-cache

40. Запустить React Native в режиме релиза (iOS)

react-native run-ios --configuration Release
  • Собирает и запускает iOS-приложение в режиме релиза, оптимизированном для тестирования в производстве.

41. Запустить React Native в режиме релиза (Android)

react-native run-android --variant=release
  • Собирает и запускает Android-приложение в режиме релиза, оптимизированном для производства. Используется для финального тестирования перед выпуском приложения.

42. Запустить тест Yest

npm test or yarn test
  • Запускает все тесты Yest в проекте.

43. Запустить ESLint

eslint .
  • Запускает ESLint для проверки кодовой базы на наличие потенциальных ошибок, предупреждений или проблем со стилем на основе правил, заданных в файле конфигурации ESLint.

44. Исправить ошибки с ESLint

eslint . --fix
  • Автоматически исправляет ошибки в кодовой базе на основе заданных правил ESLint.

45. Запустить Prettier

prettier --write .
  • Форматирует код в соответствии с правилами, определенными в конфигурации Prettier.

46. Запустить Detox (тестирование)

detox test

Expo

В этом разделе представлены команды CLI Expo.

47. Создать новый проект Expo

create-expo-app ProjectName

48. Установить Expo

yarn add expo
  • Добавляет Expo в качестве зависимости к существующему проекту, что полезно при интеграции Expo в существующий проект CLI React Native.

49. Запустить приложение Expo (Android)

expo start --android

50. Запустить приложение Expo (iOS)

expo start --ios

51. Войти в аккаунт Expo 

expo login -h
  • Обеспечивает вход в аккаунт Expo из командной строки, что необходимо для публикации приложений или использования служб Expo.

52. Открыть проект в Expo DevTools

 expo start --dev-client
  • Запускает проект Expo с использованием DevTools, позволяя отлаживать приложение в клиенте пользовательской разработки.

53. Очистить приложение Expo

expo eject
  • Очищает Expo-проект, предоставляя возможность полностью нативной кастомизации.

54. Опубликовать Expo-проект

expo publish
  • Публикует проект Expo в облаке, позволяя пользователям получить к нему доступ по постоянному URL или через приложение Expo Go.

55. Выполнить сборку проекта для производства (iOS)

expo build:ios
  • Собирает приложение для производства на iOS, создавая файл .ipa для отправки в App Store.

56. Выполнить сборку проекта для производства (Android)

expo build:android
  • Собрать приложение для производства на Android, создавая файл .apk или .aab для отправки в Google Play Store.

57. Выполнить сборку разработки Expo

expo run:ios or expo run:android
  • Выполняет локальную сборку разработки Expo-приложения, которое нужно запустить.

58. Выполнить сборку для веб-платформы

expo build:web
  • Выполняет сборку проекта для веб-платформы, создает оптимизированные активы и пакеты для веб-развертывания.

59. Оптимизировать активы для производства

expo-optimize
  • Оптимизирует изображения и другие статические активы для уменьшения размера файлов и ускорения загрузки в производстве.

60. Очистить кэш и запустить Expo

expo start -c
  • Очищает кэш Expo и запускает сервер разработки, что полезно при возникновении проблем, вызванных кэшированными данными.

61. Установить определенный пакет Expo

expo install package-name
  • Устанавливает определенный Expo-совместимый пакет и обеспечивает совместимость с текущим SDK.

62. Обновить SDK Expo

expo upgrade
  • Обновляет проект Expo до последней версии SDK, обеспечивая совместимость с новейшими функциями.

63. Настроить учетные данные iOS

expo credentials:manager
  • Управляет учетными данными iOS (предоставление профилей и сертификатов).

64. Проверить конфигурацию проекта (app.json)

expo config
  • Отображает текущую конфигурацию проекта, определенную в файле app.json.

65. Запустить диагностику Expo

expo diagnostics
  • Собирает диагностическую информацию о настройках проекта, которая может пригодиться для устранения неполадок или сообщений об ошибках.

66. Выйти из аккаунта Expo 

expo logout
  • Обеспечивает выход из аккаунта Expo, реализованный в командной строке.

67. Выполнить сборку приложения с помощью EAS (Expo Application Services)

eas build
  • Выполняет сборку приложения с помощью EAS, который поддерживает сборку приложений для iOS и Android без необходимости очистки или выхода из Expo.

68. Проверить статус сборки проекта (EAS)

eas build:status
  • Показывает состояние последних сборок проекта в Expo Application Services.

69. Настроить EAS для автоматической подписи приложения

eas config
  • Настраивает службу EAS для автоматической подписи приложения, упрощая процесс отправки для iOS и Android.

70. Просмотреть журналы Expo

expo logs
  • Отображает журналы, созданные Expo, что помогает отладить приложение Expo во время разработки.

71. Установить обновления Expo

npm install -g expo-cli or yarn global add expo-cli
  • Устанавливает или глобально обновляет CLI Expo, обеспечивая работу с последней версией.

72. Представить список всех доступных команд Expo

expo --help
  • Отображает список всех доступных команд CLI Expo с описанием каждой из них.

73. Проверить примечания к релизу Expo

expo release-notes
  • Отображает примечания к релизу последней версии SDK Expo, включая обновления и изменения.

74. Проверить и обновить зависимости проекта

expo doctor
  • Проверяет и обновляет зависимости проекта, чтобы убедиться в их совместимости с текущей версией Expo.

75. Открыть документацию по Expo

expo docs

76. Настроить обновления OTA 

expo publish --release-channel <channel>
  • Публикует обновление OTA (Over The Air — по воздуху, беспроводным способом) в определенном канале релиза, позволяя приложению получать обновления без необходимости полноценной отправки в App Store.

77. Запустить приложение на определенном канале релиза

expo start --release-channel <channel-name>
  • Запускает приложение Expo на определенном канале релиза, что полезно для тестирования различных версий приложения.

78. Возвратиться к предыдущему обновлению

expo publish:rollback
  • Позволяет возвратиться к предыдущему OTA-обновлению приложения, отменяя последние изменения.

79. Протестировать глубинные ссылки в проекте Expo

expo start --scheme <your-scheme>
  • Проверяет глубинные ссылки проекта Expo, определяя пользовательскую схему для открытия приложения.

80. Проверить размер пакета проекта Expo

expo bundle:analyze
  • Анализирует и предоставляет отчет о размере пакета, помогая оптимизировать приложение для ускорения загрузки.

81. Удалить проект Expo с серверов Expo

expo delete
  • Навсегда удаляет проект с серверов Expo, извлекая все опубликованные версии и данные, связанные с ним.

Читайте также:

Читайте нас в Telegram, VK и Дзен


Перевод статьи Adnan Sahinovic: 80+ Commands To Bookmark For React Native

Предыдущая статьяМодульное тестирование для долговечного кода
Следующая статьяТоп-10 типичных ошибок при реализации паттерна MVVM в Android