Может обновлять реагировать только на эмуляторе, а не на физическом устройстве

У меня есть приложение, работающее на локальном эмуляторе, которое обновляется в реальном времени и делает все, что должно.

У меня также есть физическое устройство, подключенное через USB, и развертывание на устройстве через run-android работает успешно, поэтому мост работает.

Однако приложение показывает только стандартный экран приветствия. Любая попытка обновить приложение приводит к появлению сообщения «Не удалось подключиться к серверу разработки».

Я попробовал подсказки на экране, но они не помогают. Куда мне идти дальше?

2
0
578
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вы, вероятно, действительно не можете разговаривать с сервером разработки. На эмуляторе виртуальная сеть с хост-компьютером создается автоматически, на реальном виртуальная сеть не настраивается между ним и устройством. Для этого вам действительно нужно иметь открытый порт на вашем рабочем столе и выбрать правильный IP-адрес на вашем физическом устройстве, с сетью Wi-Fi (я предполагаю, что они находятся в той же сети Wi-Fi), настроенной для разрешения запросов на ваш компьютер.

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

Интересно. Значит, даже если он может быть развернут на устройстве, это всего лишь передача файловой системы и не указывает на какие-либо другие возможности подключения? Хм. Как отключить поддержку разработчиков и включить пакет?

Wesley 13.09.2018 22:15

Как вы посоветуете мне определить шаги для диагностики и устранения проблемы с сетью с течением времени?

Wesley 13.09.2018 22:16

При развертывании на устройство загружается весь файл apk (приложение для Android). Загрузка пакета в режиме поддержки разработчиков требует, чтобы он разговаривал с сервером разработки. В вашем ReactNativeHost переопределите для getUseDeveloperSupport значение false, чтобы отключить поддержку разработчиков. Если вы используете все инструменты RN, в вашем каталоге ресурсов должен быть файл пакета. Если он назван index.android.bundle, он должен быть прочитан автоматически, если вы не переопределили что-либо еще.

Gabe Sechan 13.09.2018 22:18

Я попробовал это, и это решило мою проблему.

react-native start --reset-cache

а потом

react-native run-android

Другие вопросы по теме