tutorial run react instalar example cli app android react-native react-native-android

run - No se puede cargar el script desde los activos index.android.bundle en Windows



react native wikipedia (30)

Ubuntu

La primera vez, creé una nueva aplicación con react-native init project-name . Tengo el mismo error. así que hago los siguientes pasos para resolver esto en mi caso.

  1. Primero ejecute sudo chown user-name-of-pc /dev/kvm en mi caso.
  2. Mientras depura desde su teléfono Android, seleccione Use USB to Transfer photos (PTP) .

  3. Crear assets carpeta en project-name / android / app / src / main

  4. asegúrese de que index.js esté disponible en el directorio root proyecto y luego ejecute el siguiente comando desde la consola después cd project-name directorio cd project-name .

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

o para index.android.js entonces

react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

  1. Ejecute el comando ./studio.sh en el ./studio.sh android-studio/bin . Se abrirá Android Studio.

  2. comando de ejecución react-native run-android .

Estoy tratando de ejecutar mi primer proyecto React Native por primera vez en mi dispositivo (Android 4.2.2).

Y obtengo:

no se puede cargar el script desde los activos index.android.bundle

Comandos que usé:

  1. cd (project directory)
  2. react-native start
  3. react-native run-android

1 Vaya al directorio de su proyecto y verifique si esta carpeta existe android/app/src/main/assets

  1. Si existe, elimine dos archivos, a saber index.android.bundle e index.android.bundle.meta
  2. Si los activos de la carpeta no existen, cree el directorio de activos allí.

2. Desde el directorio del proyecto raíz

cd android && ./gradlew clean

3. Finalmente, navegue de regreso al directorio raíz y verifique si hay un solo archivo de entrada llamado index.js

  • Si solo hay un archivo, es decir, index.js, ejecute el siguiente comando react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

  • Si hay dos archivos, es decir, index.android.js e index.ios.js, ejecute este react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

    1. Ahora ejecute react-native run-android

Asegúrese de haber agregado / path / to / sdk / platform-tools a su variable de ruta.

Cuando ejecuta react-native run-android, ejecuta el comando adb reverse tcp: <device-port> tcp: <local-port> para reenviar la solicitud desde su dispositivo al servidor que se ejecuta localmente en su computadora. Verá algo como esto si no se encuentra adb.

/bin/sh: 1: adb: not found Starting the app (.../platform-tools/adb shell am start -n com.first_app/com.first_app.MainActivity... Starting: Intent { cmp=com.first_app/.MainActivity }


Asegúrese de que Metro Builder se esté ejecutando para sincronizar su dispositivo físico y el servidor

Primero, ejecute este comando para ejecutar Metro Builder

npm start

Entonces puede comenzar la compilación en reaccionar nativo

reaccionar nativo run-android

No debería haber ningún error esta vez. Si desea que su código esté en vivo, vuelva a cargar el cambio. Agite su dispositivo y luego toque Activar recarga en vivo


Creo que no tienes hilo instalado, intenta instalarlo con chocolate o algo así. Debe instalarse antes de crear su proyecto (comando react-native init).

No es necesario crear un directorio de activos.

Responda si no funciona.

Editar: en la versión reciente de react-native lo han arreglado. Si desea liberarse por completo de esto, simplemente desinstale el nodo (para una desinstalación completa, elimine completamente el nodo, consulte este enlace) y vuelva a instalar el nodo, react-native-cli y luego cree su nuevo proyecto.


En mi caso, he eliminado la línea de abajo de MainApplication.java. (Que previamente he agregado por error por mí.) : -

import com.facebook.react.BuildConfig;

Después de ese proyecto limpio y comando de golpe

reaccionar nativo run-android


Este es un mensaje de error general que puede haber encontrado durante el desarrollo de la aplicación nativa de reacción. Entonces, en este tutorial, vamos a proporcionar una solución a este problema.

Descripción del problema: No se puede cargar la secuencia de comandos de los activos index.android.bundle en Windows No se puede cargar la secuencia de comandos de los activos index.android.bundle en Windows

Siga los pasos a continuación para resolver el problema anterior:

Paso 1: Cree la carpeta "activos" dentro del directorio de su proyecto Ahora cree la carpeta de activos dentro del directorio del proyecto que es "MobileApp / android / app / src / main". Puede crear manualmente la carpeta de activos:

<O>

puedes crear una carpeta usando el comando también. Comando: mkdir android / app / src / main / assets

Paso 2: Ejecutar su aplicación React Native Vamos a ejecutar el siguiente comando para ejecutar la aplicación React Native en el emulador o dispositivo físico.

Cambie al directorio del proyecto. cd MobileApp

Ejecute el siguiente comando que ayuda a agrupar su proyecto de aplicación de Android.

paquete react-native --plataforma android --dev falso --intry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res

Ejecute el paso final para ejecutar la aplicación nativa de reacción en el emulador o dispositivo físico. reaccionar nativo run-android

<O>

También puede combinar los dos últimos comandos en uno. En este caso, debe ejecutar el comando solo una vez.

paquete react-native --plataforma android --dev falso --intry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res && react-native run-android

<O>

Puede automatizar los pasos anteriores colocándolos en scripts que forman parte de package.json de esta manera:

"android-android": "react-native bundle --platform android --dev false --entry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets -dest android / app / src / main / res && react-native run-android "

Si todo está configurado correctamente, debería ver su nueva aplicación ejecutándose en su emulador de Android en breve.


Este problema también puede ser causado por la desactivación de los datos celulares del dispositivo / emulador. Asegúrate de comprobar eso.


He tenido este mismo problema durante varios meses. Inicialmente utilicé la solución de @ Jerry, sin embargo, esta fue una resolución falsa ya que no solucionó completamente el problema. En cambio, lo que hizo fue tomar cada compilación como una compilación de producción, lo que significa que cualquier pequeño cambio que haya realizado en la aplicación significaría que es necesario reconstruir toda la aplicación.

Si bien esta es una solución temporal, funciona horriblemente a largo plazo ya que ya no puede aprovechar las increíbles herramientas de desarrollo de React Native, como la recarga en caliente, etc.

Se muestra una solución adecuada:

En su archivo MainApplication.java , reemplace lo siguiente:

@Override public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; }

con

@Override public boolean getUseDeveloperSupport() { return true; }

como por alguna razón BuildConfig.DEBUG siempre devolvió falso y resultó en un archivo de paquete en el directorio de activos.

Al establecer manualmente esto en verdadero, está obligando a la aplicación a usar el empaquetador. Esto NO funcionará en producción, así que asegúrese de cambiarlo a falso o al valor predeterminado.

No olvides también correr

$ adb reverse tcp:8081 tcp:8081


Me encontré con el mismo problema mientras seguía el tutorial React Native (desarrollo en Linux y apuntado a Android).

Este issue me ayudó a resolver el problema en los siguientes pasos.

  1. (en el directorio del proyecto) mkdir android/app/src/main/assets
  2. react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
  3. react-native run-android

Puede automatizar los pasos anteriores colocándolos en scripts forman parte de package.json esta manera:

"android-linux": "react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res && react-native run-android"

Luego puede ejecutar npm run android-linux desde su línea de comando cada vez.


Me he enfrentado al mismo problema con un dispositivo Android real.

Solución: basada en esta answer de Niltoid

  1. Encuentra tu IP local
  2. Abra la aplicación y agite su dispositivo Android
  3. Vaya a Configuración de desarrollo y> Servidor de depuración ...
  4. Pegue su IP y puerto; XXXX: 8088 "(donde las X son su IP local)

para usuarios de Mac: abra su preferencia de red, aquí obtendrá su IP local.


OS: Windows

Otra forma de resolver este problema después de probar dos métodos anteriores
(porque instalé SDK no en UBICACIÓN PREDETERMINADA como C: / users / "user_name" / appdata / local / sdk )

Si notó que la línea de comando anunció: "''adb'' no se reconoce como un comando interno o externo ..."

Así es como me sobrepongo:
Ejemplos: instalé SDK en D: / Android / sdk
Así que insertaré la ruta en las Variables del sistema 2 líneas más:

D:/Android/sdk/tools D:/Android/sdk/platform-tools

(Si no sabe cómo editar las variables de sistema de ruta, este es el tema: https://android.stackexchange.com/questions/38321/what-do-i-type-in-path-variable-for-adb-server-to-start-from-cmd/38324 )

Luego ejecuto cmd nuevamente: react-native run-android

Funcionó para mi.


Para iOS:

En una terminal:

cd ios

Elimine la carpeta de compilación con: rm -r build

Ejecutar de nuevo: react-native run-ios

Alternativamente, puede abrir Finder, navegar a YOUR_PROJECT / ios y eliminar la carpeta de compilación .

Luego corre de nuevo: react-native run-ios

Para Android:

En una terminal:

cd android/app

Elimine la carpeta de compilación con: rm -r build

Ejecutar de nuevo: react-native run-android

Alternativamente, puede abrir Finder, navegar a YOUR_PROJECT / android / app y eliminar la carpeta de compilación .

Luego, vuelva a ejecutar: react-native run-android


Para este problema, lo soluciono ejecutando:

react-native start

entonces

adb reverse tcp:8081 tcp:8081

en la línea de comando. Y luego puedo correr:

react-native run-android

Entonces no perderé mi tiempo en correr:

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

cada vez.


Para todos ustedes que están desarrollando desde una aplicación create-react-native y expulsados, y tienen este problema en development , esto es lo que funcionó para mí solo un pequeño detalle de la respuesta aceptada

(en el directorio del proyecto) mkdir android / app / src / main / assets

aquí viene la parte que cambia porque estás en desarrollo, deshazte de la parte --dev: false :

paquete react-native --plataforma android --intry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res

después de eso, cierre todas las terminales, borre la carpeta de compilación de android / app / para asegurarse de comenzar limpiamente para compilar su aplicación, abra una nueva terminal y

(en el directorio del proyecto) npm ejecutar android

solicitará la consola del empaquetador (en otro terminal) y se compilará correctamente


Pasé horas tratando de resolver este problema. Mi problema no era específico de Windows, pero es específico de Android.

El acceso al servidor de desarrollo funcionaba localmente y en el navegador del emulador. Lo único que no funcionó fue acceder al servidor de desarrollo en la aplicación.

A partir de Android 9.0 (API nivel 28), la compatibilidad con texto sin formato está deshabilitada de manera predeterminada.

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest ...> <uses-permission android:name="android.permission.INTERNET" /> <application ... android:usesCleartextTraffic="true" ...> ... </application> </manifest>

Consulte para obtener más información: https://.com/a/50834600/1713216


Puede seguir las instrucciones mencionadas en la página oficial para solucionar este problema. Este problema ocurre en un dispositivo real porque el paquete JS se encuentra en su sistema de desarrollo y la aplicación dentro de su dispositivo real no es consciente de su ubicación.


Puede ser causado por activos no vinculados en su base de código de proyecto React Native, como cuando cambia el nombre de su aplicación de proyecto / ID de paquete o agrega un paquete externo sin vincularlo, por ejemplo.

Simplemente pruébelo en el directorio raíz de su proyecto:

react-native link react-native run-android


Si al ejecutar el comando react-native run-android la segunda línea de la traza es

JS server not recognized, continuing with build...

significa que el empaquetador para la aplicación no se puede iniciar y la aplicación no se cargará sin algunos pasos adicionales. Tenga en cuenta que el final de la traza aún informa éxito:

BUILD SUCCESSFUL

El problema es probablemente un conflicto de puertos (en mi caso, era el sitio IIS predeterminado que olvidé por completo). Otra manifestación del problema sería una falla al abrir http://localhost:8081/debugger-ui URL en Chrome.

Una vez que se resuelva el conflicto del puerto, el seguimiento informará

Starting JS server...

entonces se abrirá una ventana de Nodo adicional ( node ...cli.js start ) y la aplicación se cargará / recargará con éxito.

Después de eso, debería poder abrir la consola de depuración en Chrome con http://localhost:8081/debugger-ui .


Si está ejecutando su aplicación en un dispositivo físico y obtiene este error

unable to load script from assets index.android.bundle

intente ejecutar el comando:

adb reverse tcp:8081 tcp:8081

Funcionó para mí ...


Si está utilizando Windows, ejecute los comandos de la siguiente manera, o si obtiene un error "No se puede encontrar el archivo de entrada index.android.js"

  1. mkdir android/app/src/main/assets
  2. react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

  3. react-native run-android


Sigue esto, trabajó para mí.

https://github.com/react-community/lottie-react-native/issues/269

Vaya al directorio de su proyecto y verifique si esta carpeta existe android / app / src / main / assets i) Si existe, elimine dos archivos, a saber index.android.bundle e index.android.bundle.meta ii) Si los activos de la carpeta no existe, luego cree el directorio de activos allí.

Desde el directorio raíz del proyecto, haga cd android && ./gradlew clean

Finalmente, navegue de regreso al directorio raíz y verifique si hay un solo archivo de entrada llamado index.js i) Si solo hay un archivo, es decir, index.js, ejecute el siguiente comando react-native bundle --platform android --dev false - -entry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res

ii) Si hay dos archivos, es decir, index.android.js e index.ios.js, ejecute este paquete react-native --platform android --dev false --entry-file index.android.js --bundle-output android /app/src/main/assets/index.android.bundle --assets-dest android / app / src / main / res

Ahora ejecute react-native run-android


También estaba enfrentando este problema porque cuando ejecuto proyectos en el emulador funciona bien, pero en un dispositivo real da este error. Entonces resuelvo este problema con la siguiente solución

1er paso: en primer lugar, abra cmd y vaya a la carpeta de herramientas de plataforma de su administrador de SDK, es decir, cd C: Desarrollo / Android / Sdk / Herramientas de plataforma

2do paso: ahora ejecuta este comando: dispositivos adb

después de este comando, verifique su dispositivo en la lista de comandos

3er paso: ahora ejecuta este adb reverse tcp: 8081 tcp: 8081

Ahora tu configuración ha terminado

4to paso: VAYA al directorio de su proyecto y ejecute este comando

reaccionar nativo run-android


Tuve el mismo problema en Mac. Después de pasar 2 días, finalmente pude obtener funciona.

Dado que Emulator cellular data was turned off , no pude unable to load script from assets index.android.bundle make sure your bundle is running .

Asegúrese de que sus Emulator cellular data is turned on index.android.js Emulator cellular data is turned on haciendo que este servidor de paquetes pueda agrupar index.android.js . Espero que ayude a alguien que está en fase de desarrollo.


Tuve el mismo problema incluso cuando se ejecutaba en un simulador. Hice una solución rápida para poder tener el flujo de trabajo de desarrollo normal.

private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { // return true here to load JS from the packager // BuildConfig.DEBUG for me was set to false which meant it // it was always trying to load the assets from assets folder. return true; } @Override protected String getJSMainModuleName() { return "index"; } };

Probablemente tendrá que revertir el cambio cuando intente hacer una compilación de producción.


Tuve un problema con McAfee en mi puerto de bloqueo de mac 8081, tuve que cambiarlo a 8082.

Primero ejecute su servidor de paquetes:

react-native start --port 8082

Abra otra terminal, inicie la aplicación de Android como de costumbre:

react-native run-android

Una vez que termine, ahora reescriba el puerto tcp que adb tunnel:

adb reverse tcp:8081 tcp:8082

Vea la lista de túneles adb tcp:

adb reverse --list

Ahora debería ver un mensaje conmovedor:

(reverse) tcp:8081 tcp:8082

Vaya a su aplicación y vuelva a cargar, ¡listo!

PD: No cambie nada en la configuración de Dev de la aplicación, si agregó "localhost: 8082", simplemente elimínelo, déjelo en blanco.

EDITAR: Para todas las víctimas de McAfee, existe una solución más fácil si tiene acceso a la raíz, simplemente elimine temporalmente el proceso de McAfee en el puerto 8081 y no necesite ningún cambio de puerto:

sudo launchctl remove com.mcafee.agent.macmn


Uso de npm versión 4.3.0 react-native-cli versión 2.01 react-native versión 0.49.5

En el directorio del proyecto,

  • mkdir android/app/src/main/assets
  • react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
  • react-native run-android

El nombre del archivo ha cambiado de index.android.js a index.js



no olvide encender internet en el dispositivo emulador, resolví este error, funciona perfecto: V Recibo este error porque apago internet para probar NetInfo: D


Estoy enfrentando este problema, mucha búsqueda y resolví ese problema.

c:/ProjectFolder/ProjectName> react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

Que ejecutar el reactivo nativo:

c:/ProjectFolder/ProjectName>react-native run-android