Нативное приложение Expo React не загружается в AppEntry.bundle - PullRequest
0 голосов
/ 05 апреля 2020

Я работаю над родным приложением, используя expo. Приложение работало просто отлично. Я мог бы npm запустить запуск построителя метро, ​​а затем запустить свое приложение на симуляторе, а также на iOS устройствах напрямую.

Я сделал 2 вещи.

  1. Я обновил версию expo до последней версии - 3.17.15
  2. Я перезагрузил свой ноутбук.

После этих 2-х изменений я все равно смог бы запустить npm без проблем. Но когда я попытался открыть / запустить приложение в симуляторе iOS, оно застряло при загрузке пакета. На самом деле он не мог получить только файл пакета.

Я думал, что это была проблема с сетью, когда симулятор / устройство не смог достичь http://127.0.0.1: 19000 Однако, когда я посетил URL в работающем браузере.

URL-адрес bunlde, который я увидел в ошибке: Here's what I see after waiting for 2 minutes

Теперь, когда я пытаюсь посетить этот URL-адрес пакета через симулятор:

http://127.0.0.1/node_modules/expo/AppEntry.bundle

Браузер никогда не загружает вещи и время ожидания.

Я уже пробовал:

  1. Очистка кеша - npm start --reset-cache
  2. Удаление папок .expo в ~ / .expo как а также ~ / project / .expo
  3. Изменение режима с Lan -> Tunnel.
  4. Обновление всемирной выставки до последней версии.
  5. удаление каталога node_modules в проекте ~ / project / node_modules
  6. переустановка node_modules путем установки - npm install.

ВАЖНО - После этой проблемы с моим текущим приложением я решил создать новое пустое выставочное приложение и запустить его. Тот же результат. Пакет не был загружен. Я также помню, как нечто подобное происходило со мной в прошлом, но не помню, как я это исправил.

Моя сеть - это точка доступа через мой телефон. Та же сеть работала до вчерашнего дня без проблем. Поэтому не уверен, что перезагрузка привела к тому, что некоторые настройки вернулись.

Любая помощь в устранении этой проблемы была бы очень полезна здесь.

Here's what I see when I visit the url : http://127.0.0.1:19000/

Here's my metro builder log:

1 Ответ

0 голосов
/ 06 апреля 2020

Наконец, потратив 2 дня и поработав на двух разных ноутбуках, я смог разобраться в root этой проблемы.

Во-первых, я думал, что это проблема обновления ОС (я обновил свою ОС до Ma c ОС Catalina). Итак, я клонировал свой репо на другом ноутбуке, фри sh, на котором не было ни одной экспозиции узла, ни собственной реакции. Я инициализировал новую выставочную версию. Пытался его запустить - работал как шарм. Симулятор не был установлен, но работал на моем устройстве без проблем. Журнал метрополитена был создан.

Это привело меня еще ближе к моему предположению. Поэтому я попытался отменить все изменения, которые были в моем репо, и попытался создать приложение с npm start, которое в итоге запускается expo start. Не сработало.

Наконец - я создал более свежий пользователь на своем ноутбуке. Модернизированный. Клонировал репо - и попытался построить проект. В этот раз! Снова это не удалось, однако было одно изменение - в журнале строителя метрополитена я получил эту ошибку:

2020-04-06T21:29:57,075: [0x110e7fdc0] while computing sockname: failed to create /usr/local/var/run/watchman/shrikant-state: Permission denied

Сторож: сторож --no-pretty get-sockname возвращается с кодом выхода = 1, signal = null, stderr = 2020-04-06T21: 29: 57,075: [0x110e7fdc0] при вычислении имени сокета: не удалось создать / usr / local / var / run / watchman / shrikant-state: разрешение отклонено

Для решения этой проблемы Я просто изменил разрешение на каталог сторожа:

sudo chmod 042777  /usr/local/var/run/watchman/

Приложение наконец-то собрано и успешно работает как на симуляторе, так и на устройстве!

...