react-native - instalar - react native example
Error de React-Native: Conexión a http:// localhost: 8081/debugger-proxy? Role=el cliente agotó el tiempo de espera (15)
Aparentemente, esto me estaba sucediendo porque había reiniciado el empaquetador nativo de reacción mientras todavía tenía abierto un depurador de Chrome que estaba conectado a la instancia anterior del empaquetador / emulador.
Matar esa pestaña de Chrome del depurador y probar
run-ios
nuevamente parecía resolverlo, sin reinicios u otro tipo de skulduggery.
react-native run-ios
comando
react-native run-ios
y mi aplicación se muestra durante 3 segundos antes de mostrar esto.
Estoy corriendo en el simulador de ios
ExceptionsManager.js: 76 La conexión a http://localhost:8081/debugger-proxy?role=client excedido el tiempo de espera. ¿Estás ejecutando proxy de nodo? Si está ejecutando en el dispositivo, verifique si tiene la dirección IP correcta en
RCTWebSocketExecutor.m
.
Arreglé la adición de un script en el objetivo principal de la pestaña de fases de compilación de "paquete de código nativo e imágenes"
Simplemente agregué
export DISABLE_XIP=NOTHANKS
El problema era que el dispositivo real intentaba conectarse a mi ip bajo el dominio xip.io
Creo que este script es necesario cuando vamos a agregar activos de imágenes personalizadas en el proyecto xCode, pero puede verificar que la URL de la IP esté mal en la pestaña Navegador de informes.
Mi configuración
react: 16.3.1, react-native-cli: 2.0.1 react-native: 0.55.4 xCode 9.4.1
Aquí el original reacciona con documentos nativos sobre xip.io (capítulo Solución de problemas) https://facebook.github.io/react-native/docs/running-on-device
Aquí la posibilidad de deshabilitar XIP. https://github.com/facebook/metro/commit/079dcaed990abb6754c03113362e4f537cd32a24
Aquí la pista que encontré para probar esta solución https://github.com/facebook/react-native/issues/12786
De alguna manera logré hacerlo funcionar sin crear un nuevo proyecto eliminando la aplicación del proyecto en el simulador en la pantalla de inicio de iOS. Funciona bien ahora.
El problema puede estar con su enrutador. Intenta conectarte a wifi a través del punto de acceso de iPhone.
En github encontré una solución, cómo configurar DNS para resolver este error en tu mac y iPhone:
- En su máquina de desarrollo, Preferencia del sistema -> Red -> Wi-Fi -> avanzado -> nameOfYourNetwork
- En la pestaña DNS, cambie la ip a 8.8.8.8
- Haz el mismo cambio de DNS en tu iPhone
En mi caso, estaba en una red diferente al teléfono. No se requiere tarjeta SIM, solo necesitaba asegurarme de estar en la misma red (aquí tenemos redes de trabajo e invitados). Hay algunas notas en la documentación para RN que puede pagar (a mitad de camino hay un cuadro rosa con el problema de proxy que todos hemos enfrentado):
http://facebook.github.io/react-native/docs/running-on-device.html
Estaba enfrentando el mismo problema para iOS.
Los siguientes trucos funcionaron para mí:
- Proyecto abierto en Xcode.
- Vaya a Producto-> Esquema-> Editar esquema-> Ejecutar.
- Variable de entorno Click + Sign.
-
Agregue el indicador
OS_ACTIVITY_MODE
con el valordisable
. - Ejecute su aplicación desde Xcode (antes de cerrar este empaquetador).
Espero que esto ayude a alguien.
Esto me estaba pasando a mí también.
De alguna manera lo arreglé con un reinicio ... imagínate.
Supongo que Metro Bundler no pudo lanzarse debido a que el puerto 8081 ya fue tomado por otro proceso.
Después de reiniciar, ejecuté
react-native run-ios
nuevamente y esta vez el simulador se lanzó correctamente sin el error.
Eso sí, esto me estaba sucediendo en un nuevo proyecto.
Intenté mucho y finalmente lo
NSAllowsArbitraryLoads
agregando
NSAllowsArbitraryLoads
a info.plist.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
Obtuve el mismo error, aunque es lo mismo para la red.
Elimine la aplicación de su dispositivo y vuelva a compilarla. Trabajará.
Para la depuración remota, ambos dispositivos deben estar conectados a la misma wifi (red).
Para mí esto funciona:
-detener la depuración remota de js,
-cierra la página del depurador js remoto en el navegador,
-Run React Native Debugger,
-prima ctrl + ty escriba React Native pakager port y confirme,
-En el simulador, presione Ctrl + M y depuración remota activa de js,
y listo!
Para mí esto sucedió cuando intentaba depurar un dispositivo real. El problema era que mi computadora y mi dispositivo real no estaban en el mismo WiFi.
Tengo este problema a menudo. Por lo general, cuando estoy desarrollando con el depurador remoto activado y guardo el tipo de error de descifrado de código.
Intenta recargar ... Si eso no lo soluciona: crlt + cmd + z. luego detenga la depuración remota, luego actualice. Eso lo solucionará, pero ahora perdió su depurador. Así que ve de nuevo ... crlt + cmd + z. esta vez inicie la depuración remota, luego actualice nuevamente. Su proyecto debería estar de regreso y listo para comenzar.
Esto funciona para mí, pero es muy molesto y requiere mucho tiempo. Desearía que alguien tuviera una mejor manera.
Tuve este error cuando olvidé volver a usar el archivo de índice en lugar de jsbundle después de la versión de lanzamiento.
yo tenía
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
En lugar de
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
Cambió al archivo de índice y se construyó nuevamente y funcionó.
#if DEBUG
jsCodeLocation = [NSURL URLWithString:@"http://192.168.11.21:8081/index.bundle?platform=ios&dev=true"];
#else
#warning "PRODUCTION DEVICE"
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
#endif
Puede encontrar su dirección IP desde este enlace https://kb.wisc.edu/page.php?id=6526