Разработка на React Native в Linux Mint
установка React
sudo npm i -g react --force
Установка React Native
sudo npm i -g react-native --force
Установка Reacti Native CLI
sudo npm i -g react-native-cli --force
создание проекта
react-native init MyProject
или
npx create-react-native-app my-app
перейти в проект
cd MyProject
для указания SDK в Android Studio Tools -> SDK Manager
В окне Appearance & Behavior -> System Settings -> Android SDK
скопировать Android SDK Location
создать файл android/local.properties и вставить скопированное
sdk.dir=/home/denis/Android/Sdk/
для того чтобы забилдить приложение для Android
создать папку android/app/src/main/assets
забилдить
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
чтобы запустить приложение на андройде выполнить инструкцию по подключению телефона
выполнить команду
npx react-native run-android
для просмотра в консоли информации о работе приложения выполнить инструкцию по подключению телефона
выполнить команду
npm start
команда для IOS (не проверял, теория)
npx react-native run-ios
EXPO
Зарегистрироватся на сайте https://expo.dev/
Установка EXPO
sudo npm install --global expo-cli eas-cli
Создание нового проета
npx create-expo-app my-app
Запустить EXPO для просмотра на устройстве
npx expo start
Настройка app.json
Настроить наименование пакета:
к примеру expo.android.package на подобии com.example.app
Авторизоватся EXPO
expo login
Проверить каким аккаунтом авторизован
expo whoami
Протестировать проект
expo doctor
Успешный результат
Build APK
eas build -p android --profile preview
Build AAB для публикации в Play Store
eas build -p android
Для явного указания IP при вызове npx expo start нужно присвоить IP переменной REACT_NATIVE_PACKAGER_HOSTNAME
export REACT_NATIVE_PACKAGER_HOSTNAME=xxx.xxx.xxx.xxx
Открыть порт 19000
firewall-cmd --zone=public --add-port=19000/tcp --permanent
firewall-cmd --reload