Невозможно загрузить скрипт. Убедитесь, что вы используете сервер Metro или что ваш пакет 'index.android.bundle' правильно упакован для выпуска
response-native run-android завершает работу, оставляя сообщение в сообщении в симуляторе Android. Сообщение выглядит следующим образом
Невозможно загрузить скрипт. Убедитесь, что вы используете сервер Metro или что ваш пакет 'index.android.bundle' правильно упакован для выпуска.
Я полностью сбит с толку, что я делаю не так.
Изменить: добавление скриншота ошибки
67 ответов
Я испытал это только потому, что мой Wi-Fi был ошибочно отключен на моем эмуляторе. Я снова включил его, и он начал работать нормально. Надеюсь, это кому-то поможет
Попробуйте выполнить следующие действия, если вы пробовали все, что упоминалось в приведенных выше решениях:
- Создать файл в android / app / src / main / assets
- Выполните следующую команду:
пакет response-native --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
- Теперь запустите свою команду для сборки, например, для run-android с реакцией.
Я столкнулся с подобной проблемой. npx react-native init
создает файл.gitignore, который игнорирует <project>/android/app/src/debug
папка. Если вы позже клонировали этот проект, эта папка отсутствовала бы. Решение простое. В будущем добавьте эту строку в конец файла.gitignore.
!android/app/src/debug
Для вашего текущего проекта попросите создателя проекта зафиксировать эту папку. Я столкнулся с этой ошибкой, когда реагировал на родную версию 0.63
В моем случае я просто закрываю эмулятор формы приложения
Затем запустите это снова
реагировать на запуск Android
Это происходит, когда устройство Android не может подключиться к серверу метро. Если описанное выше не работает, убедитесь, что на вашем устройстве Android не настроен прокси. (Настройки> Прокси-сервер> Без прокси).
ВАЖНО! В вашей среде может быть много виртуальных устройств. Убедитесь, что если вы меняете AVD, повторите настройку снова.
ОТЛАДКА ИНФОРМАЦИЯ-
Если у вас возникла ошибка выше, вы должны сначала проверить, что работает на порту 8081
Самый быстрый способ найти это, используя следующую команду в терминале
netstat -aon | findstr 8081
если это что-то показывает, значит порт заблокирован. если возможно, разблокируйте этот порт.
В противном случае вам нужно будет изменить порт. Процесс, который сделал это, уже упоминался выше в комментарии Naveen Kumar.
реакция-нативный запуск-android --port=9001
Убедитесь, что 9001 тоже не используется:)
Выполните следующие две команды
-
adb kill-server
-
adb start-server
После этого запускаем команду
npm start
за которой следует обычная зеленая кнопка запуска в Android Studio.
Проблема решена, по крайней мере для меня.
создайте network_security_config.xml:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
используйте эту конфигурацию в манифесте приложения:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<application
...
android:networkSecurityConfig="@xml/network_security_config"
...>
...
</application>
</manifest>
Сообщение об ошибке в эмуляторе вводит в заблуждение. В моем случае я использовал Macbook. Мне нужно было изменить разрешения на android/gradlew, запустив$ chmod 755 ./gradlew
, а затем приложение может быть создано и развернуто в эмуляторе Android.
По умолчанию крошечный сервер JavaScript с именем "Metro Server" работает на порту 8081.
Вам нужно сделать этот порт доступным для запуска этого Сервера. Так,
- освободить порт
- закройте ваше виртуальное устройство
- "Реакция-родной запуск-андроид" снова.
Как освободить порт?
http://tenbull.blogspot.com/2019/05/how-to-kill-process-currently-using.html
Как убить процесс в настоящее время, используя порт на локальном хосте в Windows?
и что наиболее важно, я обновил версию своего узла с 8.x до 10.x(последняя версия), как это предложено facebook @ https://facebook.github.io/react-native/docs/getting-started
Эта ошибка возникла для меня из ниоткуда, и для меня ее решило:
- Менеджер AVD в Android Studio
- Нажмите стрелку вниз в разделе Действия на вашем виртуальном устройстве.
- Стереть данные
- Перезапустить метро
Я попробовал все решения ниже, прокомментировал и ответил разными людьми. Иногда это работает, но иногда ни одно решение не работает для меня ..... лучшее решение для этой ошибки: удалите APK с физического устройства и снова запустите приложение ... его работа для меня 100% !!!
шаг 1-
Удалить
APK
с физического устройства
шаг 2-
Перейти в папку Android
cd android
шаг 3-
Введите команду
Gradlew Clean
шаг 4-
Входить
Cd..
назад к проекту
шаг 4-
Команда Run
npx react-native run-android
ИЛИ ЖЕreact-native run-android
это работает для меня, дополнительно добавьте номер порта и запустите Android
npx react-native run-android --port=8082 (maybe port number differs)
Я была такая же проблема. Но этот метод решил ее. Перейдите в папку Android с помощьюcd android
тогда gradlew clean
или ./gradlew clean
в зависимости от того, что работает для вашей ОС.
Вы также можете понизить версию node js до версии менее 12 и удалить nodemodule, затем снова запустить npm install
В некоторых случаях вам может потребоваться закрыть порт встроенного сборщика React и повторно запустить приложение с помощью того же процесса
1.sudo kill -9 $(sudo lsof -t -i:9001)
2.npm start inside the project
3. react-native run-android
У меня такая же проблема, после выполнения следующих шагов проблема была решена
- Четкие часы сторожа:
watchman watch-del-all
. - Удалите папку node_modules:
rm -rf node_modules && npm install
. - Сбросить кеш Metro Bundler:
rm -rf /tmp/metro-bundler-cache-*
- Удалить кеш-память:
rm -rf /tmp/haste-map-react-native-packager-*
Если вы работаете в ОС Linux, возможно, ваш удаленный сервер npm не работает. Откройте другой терминал (с каталогом проекта) и запустите эту команду sudo npm start или sudo реагировать-нативный запуск перед выполнением sudo реагировать-нативный запуск-android
Ни одно из вышеперечисленных решений не помогло мне в ОС Ubuntu, я решил это, выполнив следующие команды по порядку, чтобы они запускались и смотрели на одном и том же порту:
- запуск npm --port=8081
- npm run-android --port=8081
Пожалуйста, проверьте, есть ли на сервере метро другие порты. Если есть, остановите все серверы, затем перезапустите сервер и попробуйте еще раз.
Я сделал: start-native и npx react-native run-android.
Однако для Min19 (на основе Ubuntu) у меня была та же проблема, пока я не запустил:
echo fs.inotify.max_user_watches=582222 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
От:https://reactnative.dev/docs/troubleshooting
По крайней мере, у меня на мобильном телефоне работает приложение.
Я обнаружил, что в Windows «macmnsvc.exe» также работает через порт 8081.
поэтому вы можете изменить свой порт для приложения Android, запустив
npm start -- --port=8088
в вашем корневом каталоге с помощью cmd
Я просто убедился, что мой телефон подключен к тому же интернет-адресу, что и мой ноутбук, и проблема была решена. Также перейдите в папку Android и запустите ./gradlew clean
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
Это также может быть вызвано отключениемINTERNET
разрешения в манифесте. У меня есть приложение, которое не требует/не использует Интернет, и я удалил его. Прошло некоторое время с тех пор, как я обновил это приложение и забыл о нем. Потратил около часа, пытаясь снова найти каждый ответ.
this works for me on ubuntu
1. if you are having node version 17 first downgrade its version:-
You can use n for node's version management.
this is very easy to use.
$ npm install -g n
then you can show your node version:
$ node -v
v16.13.2
2. create an assets folder inside root of the project:-
project\android\app\src\main\assets
set folder name should be assets
3. now the final step implement the given code inside the project folder:-
$cd project
/project$ 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
4. after following all these step react-native was successfully running on my pc
Я столкнулся с этой проблемой в React Native v0.69 после переименования моего идентификатора пакета Android.
При переименовании /android/app/src/debug/java/old_package_name
в
/android/app/src/debug/java/new_package_name
, я случайно переместил отладочную версиюAndroidManifest.xml
во вновь созданный путь.
После перемещения обратно в/android/app/src/debug/
,yarn android
снова работал, не выполняя никаких других решений. Интересно, что эта ошибка вызвала эту ошибку, поэтому, если это произойдет с кем-то еще, убедитесь, что ваши файлы находятся там, где они должны быть.
Для чипа M1
Проверьте свой путь JAVA_HOME, в моем случае для чипа M1 я определил это как в .zprofile
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"
затем запустите source ~/.zprofile на терминале
Это сработало для меня после этого.