только на Android и только в эмуляторе, если я запускаю свое родное приложение, приложение не запускается и зависает на белом экране. Упаковщик в терминале не получает никаких запросов на подключение.
Раньше это работало, и это работает, когда я запускаю на устройстве ту же команду (реагировать на собственный запуск Android)
Я на React Native 0.57.8
Вот журналы, которые я получаю от react-native log-android:
02-26 17:12:21.527 6544 6544 D ReactNative: ReactInstanceManager.ctor()
02-26 17:12:21.606 6544 6544 D ReactNative: ReactInstanceManager.createReactContextInBackground()
02-26 17:12:21.606 6544 6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackgroundInner()
02-26 17:12:21.629 6544 6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackgroundFromBundleLoader()
02-26 17:12:21.629 6544 6544 D ReactNative: ReactInstanceManager.recreateReactContextInBackground()
02-26 17:12:21.629 6544 6544 D ReactNative: ReactInstanceManager.runCreateReactContextOnNewThread()
02-26 17:12:21.665 6544 6604 D ReactNative: ReactInstanceManager.createReactContext()
02-26 17:12:21.727 6544 6604 D ReactNative: Initializing React Xplat Bridge.
02-26 17:12:21.729 6544 6604 D ReactNative: Initializing React Xplat Bridge before initializeBridge
02-26 17:12:21.735 6544 6604 D ReactNative: Initializing React Xplat Bridge after initializeBridge
02-26 17:12:21.735 6544 6604 D ReactNative: CatalystInstanceImpl.runJSBundle()
Я даже пытался вернуться к более старой версии кода через git к версии, которая, как я знаю, работала, но это все еще не работает, поэтому я думаю, что может быть проблема с конфигурацией моей машины и эмулятора, но я не знаю, что именно.
Есть идеи, что может быть причиной этой проблемы?
Единственная возможность, которая приходит мне на ум, - это сетевое подключение. Убедитесь, что ваш эмулятор имеет активное сетевое подключение, я вижу, что у вашего Wi-Fi есть небольшой крест, в чем причина этого? также проверьте, есть ли у вашего эмулятора какие-либо настройки прокси или что-то в этом роде?
какая версия ОС у эмулятора?
Спасибо @Navneetkumar. ваш комментарий поставил меня на правильный путь. Раньше я пытался настроить Charles Proxy, и настройки все еще были активны...
Очень рад слышать, что ваша проблема исправлена, было бы еще лучше, если бы мой ответ был принят ..: D
@Navneetkumar Я не могу принять комментарий в качестве ответа. Если вы добавите ответ ниже, я буду рад принять его
Я написал ответ на этот вопрос здесь: stackoverflow.com/a/65958958/5354268
Благодаря @Navneet Kumar я узнал, что несколько недель назад пытался настроить Charles Proxy на эмуляторе. Я думал, что этот параметр ограничен одним эмулируемым устройством, но, видимо, этот параметр используется на всех устройствах. Возврат этих настроек и все работает (https://medium.com/@daptronic/the-android-emulator-and-charles-proxy-a-love-story-595c23484e02).
Спасибо
Единственная возможность, которая приходит мне на ум, - это сетевое подключение:
Это ошибка. Вы можете отследить Эта проблема для получения дополнительной информации. Единственное решение, которое они там упомянули, чтобы решить эту проблему, — это создать еще одно эмуляторное устройство в avd.
Другим решением было запустить приложение студией Android (открыв папку Android в студии Android) и запустить его, чтобы увидеть ошибки!
Я просто закрыл приложение, удалил его из эмулятора, а затем запустил react-native run-android теперь все в порядке
В соответствии с ответом Амира я удалил свое виртуальное устройство Android и установил более новое, но все равно у меня был пустой экран.
Я читал, что некоторые люди заставили это работать, очистив кеш телефона. Наконец, я попробовал, он очистил кеш телефона и очистил данные телефона, связанные с приложением. Это немного интригует, так как я уже установил новое виртуальное устройство, поэтому не должно быть кеша,
In short by clearing app cache in emulator I was able to get back to working App
Это сработало для меня. Я столкнулся с той же проблемой, на моем эмуляторе было подключение к Интернету, все остальное было в порядке. Потом почистил кеш и все заработало.
Когда я начал новый проект и перенес в него компоненты из старого, я мог видеть, что мое приложение работает через console.info, но остается с пустым экраном.
В конце концов я понял, что стиль = {{флекс: 1}} требуется для корневого компонента D'OH.
возможно, попробуйте очистить кеш сборщика, например
npm start -- --reset-cache. подождите, пока он запустится, а затем запустите эмулятор.