React-Native "No se pudo conectar al servidor de desarrollo" en createReactContext ()

Mi aplicación Android react-native se está bloqueando con unExecutionException.

"No se pudo conectar al servidor de desarrollo".

El método que falla esReactInstanceManagerImpl.createReactContext().

Pero esto esno es el error normal como muestra esta captura de pantalla:

Logcat me muestra este stacktrace:

Exception in native call from JS
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException:
 Could not connect to development server.
        at com.facebook.react.ReactInstanceManagerImpl.createReactContext(ReactInstanceManagerImpl.java:860)
        at com.facebook.react.ReactInstanceManagerImpl.access$700(ReactInstanceManagerImpl.java:98)
        at com.facebook.react.ReactInstanceManagerImpl$ReactContextInitAsyncTask.doInBackground(ReactInstanceManagerImpl.java:194)
        ...
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException:
        at com.facebook.react.common.futures.SimpleSettableFuture.get(SimpleSettableFuture.java:68)
        at com.facebook.react.ReactInstanceManagerImpl.createReactContext(ReactInstanceManagerImpl.java:831)
        ... 9 more
Caused by: java.lang.RuntimeException:
        at com.facebook.react.bridge.ReactBridge.loadScriptFromFile(Native Method)
        at com.facebook.react.bridge.JSBundleLoader$2.loadScript(JSBundleLoader.java:58)
        at com.facebook.react.bridge.CatalystInstanceImpl.runJSBundle(CatalystInstanceImpl.java:148)
        at com.facebook.react.ReactInstanceManagerImpl$4.call(ReactInstanceManagerImpl.java:851)
        ...

Esto sugiere que el servidor ha enviado el código JavaScript al dispositivo yReactBridge.loadScriptFromFile() de alguna manera no puede manejar el paquete.

Puntos a aclarar:

Esto sucede en el emulador y dispositivo (conectado a través de USB)Esto sucede en Linux (Mint) y Windows (8.1)Corríadb reverse tcp:8081 tcp:8081 según el consejo normalhe corridoreact-native start y el empaquetador / servidor se está ejecutandoel dispositivo se conecta al servidor de desarrollo, ya que esto se registra en la ventana del empaquetadorla URL a la que llega el dispositivo devuelve datos, como se puede ver si se copia en la barra de direcciones del navegador

¿Cómo es esto diferente? desde elnormal Mensaje "No se pudo conectar ..."

Aquí hay una captura de pantalla de lo que sucede cuando el servidor no se está ejecutando legítimamente:

Las diferencias incluyen:

NoExecutionException oRuntimeException antes del mensaje de errormayor claridad al proporcionar la URL que se llamó en el servidorel error proviene deDevServerHelper.onFailure()

Logcat muestra que el stacktrace es bastante diferente en estenormal caso esperado:

Unable to download JS bundle
com.facebook.react.devsupport.DebugServerException:
 Could not connect to development server.
        at com.facebook.react.devsupport.DevServerHelper$1.onFailure(DevServerHelper.java:196)
        at okhttp3.RealCall$AsyncCall.execute(RealCall.java:140)
        at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
        at java.lang.Thread.run(Thread.java:818)

Respuestas a la pregunta(1)

Su respuesta a la pregunta