run react netinfo info emulator ios react-native connection

netinfo - react native run ios-- simulator



Reaccionar nativo: ¿la conexión no tiene un error de controlador de conexión? (6)

Creé un nuevo proyecto de reacción y cuando lo ejecuto en iOS desde xcode, la consola me da esto:

2017-05-19 23:25:34.119 [info][tid:main][RCTBatchedBridge.m:77] Initializing <RCTBatchedBridge: 0x6100001a6c80> (parent: <RCTBridge: 0x6100000c46e0>, executor: RCTJSCExecutor) 2017-05-19 23:25:51.287 [info][tid:main][RCTRootView.m:295] Running application test ({ initialProps = { }; rootTag = 1; }) 2017-05-19 23:25:51.289 [info][tid:com.facebook.react.JavaScript] Running application "test" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF 2017-05-19 23:25:51.299771-0400 test[21948:1121429] [] nw_connection_get_connected_socket_block_invoke 3 Connection has no connected handler 2017-05-19 23:25:53.335282-0400 test[21948:1121426] [] nw_connection_get_connected_socket_block_invoke 4 Connection has no connected handler 2017-05-19 23:25:55.349190-0400 test[21948:1120112] [] nw_connection_get_connected_socket_block_invoke 5 Connection has no connected handler

¿Qué 2017-05-19 23:25:51.299771-0400 test[21948:1121429] [] nw_connection_get_connected_socket_block_invoke 3 Connection has no connected handler que significan estas líneas y cómo 2017-05-19 23:25:51.299771-0400 test[21948:1121429] [] nw_connection_get_connected_socket_block_invoke 3 Connection has no connected handler el problema?

Noté esto por primera vez cuando intenté usar fetch en mi aplicación y descubrí que no funcionaba. Encontré estos mensajes en la consola y luego descubrí que estos mensajes están ocurriendo con todas mis aplicaciones, así que asumo que eso significa que es un problema de configuración de mi parte.

Creé un nuevo programa de prueba para probar lo que estaba causando esto y descubrí que sucedía en un proyecto completamente nuevo. A continuación se muestra mi código que generó la salida de registro anterior:

/** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React, { Component } from ''react''; import { AppRegistry, StyleSheet, Text, View } from ''react-native''; export default class test extends Component { render() { return ( <View style={styles.container}> <Text style={styles.welcome}> Welcome to React Native! </Text> <Text style={styles.instructions}> To get started, edit index.ios.js </Text> <Text style={styles.instructions}> Press Cmd+R to reload,{''/n''} Cmd+D or shake for dev menu </Text> </View> ); } } const styles = StyleSheet.create({ container: { flex: 1, justifyContent: ''center'', alignItems: ''center'', backgroundColor: ''#F5FCFF'', }, welcome: { fontSize: 20, textAlign: ''center'', margin: 10, }, instructions: { textAlign: ''center'', color: ''#333333'', marginBottom: 5, }, }); AppRegistry.registerComponent(''test'', () => test);


En mi caso, se debió a una aplicación de firewall (Little Snitch) que nunca solicita acceso cuando se ejecuta desde una aplicación nativa de reacción. Pasos que me funcionan:

  • Abre el navegador Safari en el simulador.
  • Visita google.com o cualquier dominio
  • Asegúrese de que abre la página. Se pedirá acceso, etc
  • Reinicia tu aplicación en el simulador
  • Reinicie el registro react-native log-ios

Eso debería ayudar.


Este error es muy probable que provenga de un websocket integrado en react-native para conectarse a react-devtools. Si no está ejecutando react-devtools mientras realiza la depuración, obtendrá este error y también enviará un montón de mensajes a través del puente quejándose de no poder abrir el websocket (solo verá esos errores si está usando algo como rn-snoopy ).

El error se detendrá tan pronto como instale y abra react-devtools. Consulte estas instrucciones para saber cómo hacerlo: https://github.com/facebook/react-devtools/blob/master/packages/react-devtools/README.md


Me di cuenta de la solución:

Para desactivar Verbose para el modo de actividad OS

  1. Desde el menú de xcode, Proyecto -> Esquema -> Editar esquema.
  2. Luego seleccione Run a la izquierda y luego seleccione la pestaña Arguments a la derecha.
  3. En Environment Variables agregue el nombre OS_ACTIVITY_MODE y el valor como disable .

O vea la imagen de abajo.

Nota: el crédito por la imagen va a Ramkrishna Sharma


Para deshabilitar las secuencias de websocket hice lo siguiente:

  • en xcode: Libraries / React.xcodeproj / React / Inspector / RCTInspectorPackagerConnection.m: find - (void)connect { y agrega return; justo después de eso

  • en node_modules / react-native / Libraries / Core / Devtools / setupDevtools.js: reemplace if (__DEV__) con if (false)

Esto es bastante feo pero mucho mejor que la solución OS_ACTIVITY, ya que no oculta ni impide otras herramientas de depuración.


Trate abajo del proceso

Menú Xcode -> Producto -> Editar esquema ...

Variables de entorno -> Agregar -> Nombre: "OS_ACTIVITY_MODE", Valor: "deshabilitar"

Ejecuta tu aplicación de nuevo


Tuve el mismo problema, y ​​el inicio de mi aplicación se retrasó significativamente debido al problema. La solución real para mí se detalla here , pero la reescribiré en caso de que el enlace se rompa:

  1. Abrir Xcode
  2. Haga clic en Product en la barra superior
  3. Haga clic en Scheme , desplácese hacia abajo para Edit Scheme
  4. Seleccione Run en la barra izquierda, Info en la pestaña superior
  5. Cambie la Build Configuration de Debug a Release

Ahora la aplicación no solo ya no tiene los errores, sino que también se inicia mucho más rápido. Las otras "correcciones" solo ocultan el error.