Me di cuenta de que algunas personas preguntaron recientemente sobre este error "No hay URL de paquete presente" y lo enfrenté yo mismo.
Acababa de ejecutar ˜react-native init projectName˜, configuré mi archivo App.js (un simple Hello World), lo llamé en los índices de iOS y Android y ejecuté ˜react-native run-ios˜. Luego apareció el error No bundle url present.
Traté de eliminar mi instalación de node_modules y npm, cerrar el empaquetador y ejecutar el proyecto nuevamente, pero solo se pudo resolver si sigo los pasos que se indican aquí (http://stackoverflow.com/questions/42610070/what-means-of -no-bundle-url-present-in-react-native).
Este es el primer proyecto que comencé usando RN 0.42. Como nunca sucedió antes y no soy el único que enfrenta este problema, supongo que debería analizarse más de cerca.
Aquí está mi paquete.json:
{
"name": "myProject",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "~15.4.1",
"react-native": "0.42.0"
},
"devDependencies": {
"babel-jest": "19.0.0",
"babel-preset-react-native": "1.9.1",
"jest": "19.0.2",
"react-test-renderer": "~15.4.1"
},
"jest": {
"preset": "react-native"
}
}
Si puedo ser de más ayuda para hacer alguna prueba más, sería un placer.
Tener el mismo problema ahora. No estoy seguro de qué cambió.
El mismo problema.
Creo que es un problema con XCode. Eso es lo único que puedo imaginar. Se actualizó y se desató el infierno.
Enviado desde mi iPhone
El 7 de marzo de 2017 a las 22:55, Decade [email protected] escribió:
El mismo problema.
—
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub o silencie el hilo.
¿Qué sucede si ejecuta npm start
en la consola?
El mismo problema.
encontré
JsCodeLocation = [[RCTBundleURLProvider jsBundleURLForBundleRoot:@ sharedSettings] "index.ios" fallbac kResource:nil ];
No tome la dirección efectiva, esto sucede en relación con la situación de la red (y no todas las redes), cuando esto sucede, desconectado de la red, creo, en una máquina virtual puede ejecutarse en localhost: 8081
Esta es mi forma de ser
No. Intenté todo.
Enviado desde mi iPhone
El 8 de marzo de 2017, a la 1:53 a. m., Eugene Sokovikov [email protected] escribió:
¿Qué sucede si ejecuta npm start en la consola?
—
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub o silencie el hilo.
Funcionó bien con android
Enviado desde mi iPhone
El 8 de marzo de 2017 a las 2:13 a. m., mac2066 [email protected] escribió:
El mismo problema.
encontré
JsCodeLocation = [[RCTBundleURLProvider jsBundleURLForBundleRoot:@ sharedSettings] "index.ios" fallbac kResource:nil ];
No tome la dirección efectiva, esto sucede en relación con la situación de la red (y no todas las redes), cuando esto sucede, desconectado de la red, creo, en una máquina virtual puede ejecutarse en localhost: 8081
Esta es mi forma de ser—
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub o silencie el hilo.
@AbeHerbert
Sí, este es el código de IOS, simplemente miro el código, aquí tomará automáticamente la IP local, pero obviamente, no tomé, Android no lo probé, pero esto obviamente es diferente del código de IOS
Mi situación cuando cambié un entorno de red, es normal, muy inteligente, cuando conocí el hogar.
Intento imprimir el acceso automático a la dirección completa, se toman para volver al nulo, al mismo tiempo, la aplicación estará esperando el inicio del caso, esta es la dirección local
NSLog (@ absoluteString:%@), [jsCodeLocation absoluteString]);
NSLog (@ host:%@), [jsCodeLocation host]);
NSLog (@ port:%@), [jsCodeLocation port]);
cuando lo haré
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];
Modificado en
jsCodeLocation = [NSURL URLWithString:@"http://127.0.0.1:8081/index.ios.bundle?platform=ios&dev=true"];
Esta vez puede ser un inicio normal, pero luego de ingresar a la aplicación de carga remota de imágenes, parece incorrecto
Esto es solo un punto de vista, y no hay una solución concreta.
Recibí ese mensaje cuando el empaquetador no se está ejecutando cuando se inicia la aplicación en iOS. Por lo general, tengo que eliminar por completo la aplicación y volver a iniciarla después de haber iniciado el empaquetador. ¿Pueden estar seguros de que tienen el empaquetador ejecutándose antes de iniciar la aplicación?
@ rmevans9 en mi caso, el empaquetador se ejecutaba como siempre. La solución que publiqué se realiza mientras se ejecutan el empaquetador y la aplicación. Esa es la única manera que encontré por ahora para manejar esto. Creo que algo va mal cuando los módulos están instalados en el inicio nativo de reacción. tengo que hacer unas pruebas antes de asegurarlo
Sí, el empaquetador ya se está ejecutando. Puedo acceder a ella a través del navegador.
También estoy viendo este problema en RN 0.42.0
+1
El mismo problema y ejecuto "npm install" y "react-native run-ios", el problema parece no estar resuelto todavía.
Estoy viendo el mismo problema @ 0.42.0 y
"npm install" no lo resuelve.
Mi problema se resolvió agregando NSAllowsLocalNetworking
a Info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
</key>
No estoy seguro de que se deba a un problema con RN0.42 o iOS, pero en mi caso está resuelto.
Verifique si tiene 127.0.0.1 localhost
en sus hosts, limpie el proyecto y vuelva a intentarlo, funcionó para mí.
Por supuesto que sí. soy desarrollador web jajaja
Enviado desde mi iPhone
El 12 de marzo de 2017, a las 4:35 a. m., AkiVer [email protected] escribió:
Verifique si tiene 127.0.0.1 localhost en sus hosts, limpie el proyecto y vuelva a intentarlo, funcionó para mí.
—
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub o silencie el hilo.
Encontré una solución que funciona, pruébalo. Mientras el simulador se está ejecutando, no cierre su paquete. Vaya a la ruta y ejecute npm install y luego nuevamente react-native run-ios. Comenzó a funcionar para mí.
Enfrenté estos problemas después de mover mi proyecto a otro directorio y ejecutar el simulador de iOS.
Esto funciona para mí: deje el simulador en ejecución, deje la ventana del terminal del empaquetador activada y ejecute react-native run-ios nuevamente.
Esto también significa el "Puerto ya en uso"
Terminar un proceso en el puerto 8081
Ejecute el siguiente comando en una Mac para encontrar la identificación del proceso que está escuchando en el puerto 8081:
$ sudo lsof -i :8081
Luego ejecute lo siguiente para terminar el proceso:
$ kill -9 <PID>
intente solucionar el problema en el siguiente enlace
https://facebook.github.io/react-native/docs/troubleshooting.html
Gracias,
Dhiraj
Solo dejo esto aquí, en caso de que otras personas encuentren la misma causa.
En el caso de nuestro equipo, durante la migración a 0.42.0, eliminamos accidentalmente la fase de compilación "Bundle React Native code and images" del proyecto XCode.
Volver a agregar manualmente la fase resolvió el problema, pero nos quedamos rascándonos la cabeza en cuanto a cuándo o cómo se eliminó la fase.
funciona para mí cuando construyo la aplicación a través de xcode...
Mismo problema. Establecí el esquema en Release
en Xcode e intenté archivar la aplicación para la producción, pero main.jsbundle
no genera...
Tuve el mismo error y pude ejecutar la aplicación solo a través de Xcode. react-native run-ios
no funcionó. Para resolver el problema, debe eliminar la carpeta de compilación YOUR_PROJECT/ios/build/
. Después de esto, debería poder ejecutar su aplicación a través react-native run-ios
nuevamente. Espero que esto ayude.
Para la configuración de depuración, que es la predeterminada cuando se genera un nuevo proyecto con el comando react-native init
, la compilación no genera un archivo de paquete, sino que usa el empaquetador para eso. Entonces, el problema está relacionado con la configuración de la red y es muy probable que esté relacionado con la configuración del proxy. Si se utiliza un proxy, no olvide configurar el proxy de omisión para localhost y direcciones 127.0.0.1.
Lo mismo aquí... Instalar los paquetes de nodos nuevamente no es una solución adecuada
En mi caso, fue porque estaba ejecutando Shadowsocks (estando en China en este momento) y no lo configuré para omitir 127.0.0.1 y localhost. Gracias @om2pkral por mencionar eso.
En mi caso, no se mostró nada en la otra terminal que se inició cuando se ejecutó react-native run-ios
.
Significa que el empaquetador no se está ejecutando.
Entonces pude iniciar el empaquetador ejecutando PROJECT_DIR/node_modules/react-native/packager/launchPackager.command
yo mismo.
Ejecuto react-native run-ios
nuevamente, se inició normalmente.
No sé la causa, pero el comportamiento del siguiente comando open
es dudoso.
https://github.com/facebook/react-native/blob/f48b54bf6211dbbdd32839b0de68b1d0a451e486/React/React.xcodeproj/project.pbxproj#L2421
Gracias a @om2pkral y @account-archived-270316, Shadowsocks en modo global causa el problema; si está ejecutando un proxy, intente cerrarlo;
Pasé de 42.0 a 42.2 y recibí este error con la implementación de mi vuelo de prueba. Eliminé el directorio de compilación Y agregué <key>NSAllowsLocalNetworking</key>... <true/>
y comenzó a funcionar nuevamente. Sin embargo, no sé cuál de los 2 fue la magia. Voy a asumir el primero y eliminaré el cambio de info.plist.
Ejecuté "react-native run-ios" por segunda vez, salió bien.
echa un vistazo a tu servidor local
¿Estás abierto? cuando encontré este problema, descubrí que abrí mi vpn
Tengo un problema similar con RN 0.40, no puede generar el paquete en modo de lanzamiento. Se detiene con error
`Granja de trabajadores: mensaje recibido para índice desconocido para niño existente. ¡Esto no debería pasar!
SyntaxError: Token inesperado: punc (.)`
y no puedo entender dónde está el error, pero es el paso del paquete nativo de reacción el que falla
@yustada Agregar la clave NSAllowsLocalNetworking resolvió mi problema, pero ahora mi clave NSAllowsArbitraryLoads ya no parece funcionar (por ejemplo, ya no puedo cargar imágenes http). ¿Alguna idea?
Tengo el mismo problema. Pero lo resolví, porque tengo un proxy abierto. Tal vez pueda verificar si abre el proxy de red y asegurarse de haberlo cerrado.
Perdón por la pregunta estúpida, pero ¿qué quieres decir con proxy abierto? No creo que abrí ningún proxy de red, pero supongo que puede estar bajo el capó. ¿Cómo puedo verificarlo y apagarlo?
Tal vez estemos en un entorno diferente. No tuve este problema ni ayer ni antes, pero recibí este error hoy porque abrí un software de proxy shadowsocks que solía ser proxy. Entonces, cuando lo apago, todo va bien. No se si tienes el mismo problema. La aplicación RN en el modo de depuración local descargaría el paquete desde el host local: localhost , por lo que si uso la agencia de red, no puede encontrar el host local. no se si entiendes lo que digo inglés pobre.
@yustada su solución ( aquí ) resuelve mi problema. Creo que poner este parámetro arreglará algo roto en Xcode. ¡Todos mis proyectos no son depurables!
Aparentemente, con la nueva versión está funcionando (2.8.13), seguí las diversas soluciones y eliminé algunos códigos problemáticos de mi proyecto y ahora es mejor. El problema es que feo y, en general, el entorno de lanzamiento es diferente del entorno de desarrollo. PERO uglify hizo imposible la depuración, para descubrir dónde estaba el problema tuve que profundizar mucho para mejorar la depuración.
En Mac, cuando habilito el proxy obtendré este problema, deshabilite el proxy todo bien.
Para mí, el problema era que no podía crear el paquete JS. No indica el error al compilar desde Xcode, por lo que no hay forma de que lo sepa. Para encontrar el error, ejecute el siguiente comando.
react-native bundle --platform ios --dev false --entry-file index.ios.js --bundle-output ./ios/release/main.jsbundle --assets-dest ./ios/release/main.jsbundle
Para mí, el error fue algo con el componente PureRenderMixin faltante. Para lo cual la solución se puede encontrar aquí: https://github.com/facebook/react-native/issues/13078. Básicamente, debe instalar manualmente [email protected]. Esto se puede hacer ejecutando este comando.
npm i --save [email protected]
Este problema ahora le está sucediendo a todos porque se están lanzando versiones más nuevas de react alphas (particularmente alpha.5) y están rompiendo las compilaciones nativas de react.
De la misma manera que @akiver , resolví el problema.
$ sudo vi /private/etc/hosts
# Add this line
127.0.0.1 localhost
Seguí los pasos descritos por @cutemachine , funcionó para mí. Aunque antes de eso, también hizo lo habitual rm -rf node_modules, restablecer el caché del empaquetador.
Este es el problema de los agentes de red, puede verificar si el uso de su propia red sobre las herramientas de pared
Puse el agente Shadowsocks del modelo global del modelo global en modo proxy automático en él
Y luego react-native run-ios
@Binb1
¿Has probado NSAllowsArbitraryLoadsForMedia
y NSAllowsArbitraryLoadsInWebContent
?
Se agregaron algunos parámetros ATS para iOS 10.0 y versiones posteriores y en macOS 10.12.
https://forums.developer.apple.com/thread/6767
Obtendré este error al azar casi sin motivo (sin ejecutar un proxy, sin hacer cambios locos en el proyecto). Para solucionarlo, eliminaré mi node_module, luego volveré a npm install
y funcionará. Pero es un poco preocupante que suceda tan al azar.
El método @cutemachine también funciona para mí :) gracias
Me funcionó cuando lancé el simulador desde Xcode 🤔
@acomito
Probablemente porque está ejecutando el número de puerto nativo 8081 está ocupado, por ejemplo, use algún otro software, puede ver el próximo intento
tuvo que ejecutar sudo xcodebuild -license
como se indica en el mensaje de error:
"Aceptar la licencia de Xcode/iOS requiere privilegios de administrador, ejecute "sudo xcodebuild -license" y luego vuelva a intentar este comando".
funciona ahora
Asegúrese de que su archivo de hosts tenga 127.0.0.1 localhost. Descubrí que de alguna manera logré eliminarlo. Una vez que lo volví a agregar, el problema se resolvió.
Ayer probé React Native por primera vez y me ocurrió el mismo problema.
Esto es lo que ya he probado:
Notas:
Cualquier ayuda será apreciada, gracias.
Tengo el mismo problema cuando muevo el proyecto a otra carpeta vacía.
pero puede funcionar cuando se inicia el simulador desde Xcode.
finalmente resuelto por:
@skywlkr @haikyuu tal vez útil
no edite info.plist.
porque el simulador necesita una importación de paquetes desde localhost.
@ lany44 desafortunadamente todavía no funciona. pero gracias.
Probé casi todas las combinaciones de soluciones aquí y ninguna funcionó. La única forma en que pude ponerme en marcha fue abrir dos sesiones de terminal en el directorio del proyecto, ejecutar npm start
en la primera y luego ejecutar react-native run-ios
en la segunda.
No recuerdo haber tenido que hacer eso hace uno o dos meses cuando estaba jugando con esto por primera vez. ¿Quizás hay una regresión en la forma en que se inicia el servidor de empaquetado si aún no se está ejecutando?
@ngmiller Trabajó para mí!
@ngmiller también probó su solución, pero aún no funciona. Estoy empezando a volverme loco.
@skywlkr Muy frustrante. Perdí varias horas en esto ayer. Tal vez sea una pregunta tonta, pero ¿has probado desde un proyecto completamente nuevo?
si, lo he probado con un proyecto totalmente nuevo
Tengo el mismo problema que @skywlkr y obtengo los mismos resultados. He probado todas las sugerencias aquí pero desafortunadamente ninguna de ellas ha funcionado.
Tuve este error y se debió a mi archivo de espacio de trabajo xcode. Tuve la suerte de que no había trabajado mucho en el espacio de trabajo, así que lo eliminé y ahora se construye.
POS WTF .. Estoy atascado con esta mierda durante los últimos 2 días. El tipo de arriba tiene razón, me encuentro exactamente con el mismo problema.
@ezos86 Te entiendo totalmente. Intentaré darle una oportunidad más en los próximos días e informaré.
Tuve el mismo problema cuando intento duplicar Lightbox que hace que el doble proporciona el Módulo con el mismo nombre.
/**
* <strong i="6">@providesModule</strong> LightboxOverlay
*/
Y lo soluciono eliminando provideModule y luego llamo a react-native run-ios
nuevamente.
¿Alguien podría dar alguna pista? Podria ser muy apreciado.
@skywlkr , volví a intentar la solución mencionada por @ mac2066 de cambiar la variable jsCodeLocation y funcionó. No lo he probado con una aplicación que tenga imágenes locales, etc., así que puede que tenga problemas o no, pero al menos hello world funciona ahora en la Mac. Información más detallada está aquí si la necesita. Buena suerte.
@dcp12345678 gracias por el consejo, realmente funciona, al menos como una solución temporal. también gracias @mac2066 por descubrirlo.
Actualizar bash (a la última 4.4.12) a través de Homebrew me ayudó. Usar brew upgrade bash
@ngmiller ¡ Eso funcionó para mí! ¡Gracias!
Me seguía pasando esto después de instalar ciertos complementos.
Lo arreglé haciendo esto;
npm cache clean
react-native run-ios
: esto se ejecutaría y luego mostraría el error _No hay URL de paquete presente_react-native run-ios
Parece arreglar lo que estaba sucediendo y me permite simular desde Xcode nuevamente
@hisshash Gracias, su solución funcionó.
En mi caso el problema se solucionó reiniciando el servidor adb
: adb kill-server && adb start-server
@hisshash También tuve que ejecutar react-native run-ios
dos veces. react-native parece preocupantemente no determinista
También me encuentro con este problema en mi proyecto, se resuelve de la siguiente manera:
modifique esa área en your-project/ios/your-project-name/Info.plist:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict/>
</dict>
agregue el siguiente comentario en él:
<key>NSAllowsLocalNetworking</key>
<true/>
en absoluto, al total le gusta eso, este problema termina.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict/>
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
¿Está utilizando React-Native-Flux-Router?
Encontré la solución a mi problema aquí:
http://stackoverflow.com/a/43875440/5439517
Elimine "node_modules > react-native-router-flux > node_modules > react-native". Ejecute react-native run-ios
y debería funcionar.
Mi archivo main.jsbundle no se generó. La causa fue que en el paso de las fases de compilación, el shell en el que xcode tiene como valor predeterminado es /bin/sh, que no tiene en cuenta mi uso de nvm. El script fallaba silenciosamente por alguna razón, porque estaba ejecutando una versión mucho más antigua del nodo instalado en mi sistema, 0.10.22. Cambiar el shell a ZSH resultó en la creación de main.jsbundle para versiones de lanzamiento
@davidtrogers Esto también resolvió mi problema al 100%. Me olvidé por completo de NVM.
Instalé react-native en mi máquina Mac hoy y encontré el mismo problema cuando ejecuté react-native run-ios
por segunda vez y más. La solución para mí es rm -rf ios/build
, pero esto ralentizará significativamente mi ciclo normal de desarrollo.
Algunos puntos a tener en cuenta es que instalo el nodo a través de nvm en lugar de homebrew. Además, estoy usando yarn en lugar de npm para la gestión de paquetes. Eso significa que ejecuté yarn global add react-native-cli
en lugar de npm install -g react-native-cli
y yarn install
en lugar de npm install
. Vale la pena señalar esto porque no veo hilo mencionado en absoluto en este número. ¿Hay algún tipo de incompatibilidad con la que me acabo de encontrar?
Bien, creo que he reducido mi problema a un caso específico de reproducción al 100 %.
Este problema solo ocurrirá si ejecuto react-native run-ios
una vez después de cerrar la pestaña/ventana del terminal que lanzó React Packager. En este caso aparece la pantalla roja del emulador con el mensaje de error. Sin embargo, si mantengo abierta la pestaña/ventana de React Packager y ejecuto react-native run-ios
nuevamente, el emulador ahora iniciará la aplicación sin un error. Además, cada vez que ejecuto react-native run-ios
con la pestaña React Packager abierta, el emulador siempre seguirá funcionando correctamente.
Una observación clave para hacer es una correlación entre si aparece la siguiente línea de salida en la pestaña React Packager y si ocurre este problema:
Combinando
index.ios.js
... listo.
Esta línea no aparecerá cuando el emulador falle con el mensaje "url de paquete no presente", pero aparecerá cuando el emulador tenga éxito.
Espero que esto ayude. Molesto, pero al menos encontré una manera de acelerar mi flujo de trabajo de desarrollo. ¿Quizás esto es un error en React Packager ?
primero, haga ping a 127.0.0.1 si 64 bytes desde 127.0.0.1: icmp_seq=2 ttl=64 time=0.068 ms
segundo, haga ping a localhost, si su IP de análisis de localhost no es la IP de su computadora, encontramos el problema, razón: su localhost fue modificado,
tercero --- necesita modificar su computadora 127.0.0.1 con localhost, abrir /etc/hosts
y establezca por ejemplo: guardar, recargar su Internet Explorer
1 ##
2 # base de datos del anfitrión
3 #
4 # localhost se usa para configurar la interfaz loopback
5 # cuando el sistema se está iniciando. No cambie esta entrada.
6 ##
7 127.0.0.1 servidor local
URL de explicación detallada: http://www.webkaka.com/tutorial/server/2013/121611/
@lishiping gracias por la sugerencia, pero ese no es mi problema. No he modificado mi archivo /etc/hosts
y puedo ping localhost
perfectamente.
RN = 0.43.3
Xcódigo = 8.3.2
Mac OS = Sierra 10.12.5
Recibo "No hay URL de paquete presente". solo cuando se intenta ejecutar en modo de lanzamiento en xcode. Puedo ejecutar bien la aplicación en modo de depuración.
Corrí react-native bundle --platform ios --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle
y me da el siguiente error:
Unexpected token: keyword (default)
No muestra ningún número de línea o archivo de donde pueda provenir el error. ¿Hay una mejor manera de obtener más contexto sobre este error?
También intenté eliminar la carpeta de compilación, npm ejecutar limpio, eliminar la carpeta node_modules, instalar hilo sin suerte.
Esta misma compilación exacta me funcionó hace unos días, así que no estoy seguro de qué cambió. Todavía estoy en la misma versión de MacOS, xcode y react native.
Estoy experimentando un problema similar al de @zachrnolan , aunque en mi caso, tanto Android como iOS se ven afectados en nuestro CI.
En Android, las compilaciones fallan durante la fase :bundleReleaseJsAndAssets
y aparece el mensaje Unexpected token: keyword (default)
.
En iOS, las compilaciones tienen éxito, pero el paquete no parece estar incluido debido a este mismo error (que pude encontrar en algún lugar de los enormes registros de xcodebuild).
Esto solo parece estar sucediendo para los lanzamientos y, en mi caso, no he podido reproducir esto localmente de ninguna manera.
@zachrnolan , el problema se solucionó solo para mí. Pensé en dejarte saber.
@stinodes Pude solucionar esto actualizando Watchman, muy extraño.
Aquí están los pasos que tomé:
brew update
brew unlink watchman
brew install watchman
Ejecuté npm run clean
que configuré para hacer esto:
rm -rf ios/build; rm -rf ios/build; rm -rf android/build; rm -rf android/app/build; rm -rf $TMPDIR/react* ; rm -f ios/main.jsbundle; rm -rf node_modules; rm yarn.lock || true; npm cache clean; yarn cache clean
yarn install
o npm install
, si no estás usando hilo
Esperemos que esto ayude a otros que tienen el mismo problema. También tengo una publicación de desbordamiento de pila aquí: http://stackoverflow.com/questions/43993590/react-native-no-bundle-url-present-release-mode-only
Gracias @cutemachine , funcionó para mí.
@zachrnolan , un problema que tengo con sus pasos es que desvincular Watchman y luego instalarlo no hará nada. Además, el vigilante ya ni siquiera estará en el CAMINO porque no está vinculado. Aquí está el resultado de brew install watchman
, que esperaba:
$ cerveza instalar vigilante
Advertencia: watchman-4.7.0 ya está instalado, simplemente no está vinculado.
No obstante, después de seguir sus instrucciones, todavía me encuentro con este error. Con suerte, alguien del equipo de desarrollo central de React-Native puede ayudar a solucionar este problema.
Este es mi primer día usando React Native y todavía estoy revisando la guía de introducción.
Cada vez que ejecuto react-native run-ios
aparece el error No bundle URL present
.
Lo resuelvo por:
kill $(lsof -t -i:8081)
react-native run-ios
para eliminar el directorio de compilación de iOS antes de volver a compilar.rm -rf ios/build/; react-native run-ios
echo "alias rni=\"kill \$(lsof -t -i:8081); rm -rf ios/build/; react-native run-ios\"" >> ~/.bashrc
source ~/.bashrc
Ahora puedo ejecutar la compilación React Native iOS con solo el comando sin preocuparme por las pantallas rojas de error comunes de la muerte:
Me pregunto por qué React Native solo les da a los usuarios este error en lugar de simplemente facilitar la vida del desarrollador al rectificar automáticamente el error y volver a cargar.
Vuelvo a aparecer el mismo error/pantalla roja, "No hay URL de paquete presente", pero esta vez la causa fue un error de sintaxis en mi JS. Creo que uno de los problemas es que el error no aparece en la salida del empaquetador y el empaquetador falla silenciosamente. La única indicación que tengo de que el paquete no se está generando es la siguiente salida de Xcode:
Estoy ejecutando zsh con nvm en MacOS 10.12.4. Descargué React Native por primera vez hace 2 días e instalé Watchman hace 2 días, así que asumo que estoy ejecutando las versiones más recientes.
Obtengo la misma pantalla roja cada vez que ejecuto react-native run-ios
.
Si solo ejecuto ese comando, se abre una nueva ventana de terminal, pero parece que nada sucede y luego aparece la pantalla roja de la muerte con la misma notificación. lsof -t -i:8081
no devuelve nada. Entonces parece que react-native run-ios
no está iniciando el empaquetador.
Sin embargo, si en una ventana separada/panel tmux ejecuto npm start
, entonces el empaquetador comienza a ejecutarse y luego ejecuta react-native run-ios
todo está bien en el mundo y todo comienza bien.
Así que creo que react-native run-ios
en las versiones más recientes de mac/xcode/react-native, el empaquetador no se inicia.
Este problema se ha salido un poco de control, y no estoy seguro de que todos aquí se encuentren con el mismo problema. Esto tiene que ver con el hecho de que el error puede aparecer por cualquiera de varias razones.
Le recomiendo encarecidamente que abra un nuevo problema si se encuentra con esto y está seguro de que no se ha proporcionado una solución en este hilo.
@ powercoder23 cuando pruebo tu método obtengo:
gestor de psoulages$ kill -9
-bash: error de sintaxis cerca del token inesperado `nueva línea'
¿Por qué está cerrado cuando todavía está sucediendo?
Enfrentando el mismo problema.
Acabo de instalar todo y creé una nueva aplicación en mi Mac según la documentación. Al ejecutar react-native run-ios
da un error similar a las pantallas anteriores.
Cómo vamos a crear una aplicación completa si recibimos un error en la primera ejecución para un ejemplo documentado simple :(
@sukhvir1313 Sí, es vergonzoso y rechazaría a los novatos e incluso a los desarrolladores experimentados.
@hramos , ¿no se cerraría el hilo del problema solo después de resumir quién resolvió el problema y cómo? Si el problema se debe a un mensaje de error ambiguo que podría aparecer por una de varias razones, ¿por qué no agregamos este problema común a las preguntas frecuentes de React Native, proporcionamos un enlace en este hilo y luego creamos un Elemento de acción de brindar la oportunidad para que un desarrollador de código abierto actualice las partes relevantes del código base de React Native para proporcionar mensajes de error más específicos y significativos, particularmente si afecta a tantos usuarios, incluso a usuarios nuevos. Si tuviera alguna orientación, estaría más que feliz de intentar ayudar a solucionar este problema, pero ¿por dónde empiezo?
Tengo el mismo problema con el paquete ("No hay URL de paquete presente").
Pruebe este comando, en la carpeta raíz del proyecto.
react-native upgrade
y luego
react-native run-ios
Funcionó para mí.
@ltfschoen , este problema se ha convertido en un problema general para cualquier cosa que resulte en un error "No hay URL de paquete". Es difícilmente accionable. Al alentar a que se abra un nuevo problema para cualquiera que se encuentre con esto, esperamos poder centrarnos en identificar cualquier error real restante. En cuanto a las preguntas frecuentes, me remito a las personas activas en este hilo.
Asegúrese de que su shell predeterminado sea bash, debido al comando export NODE_BINARY=node
necesario.
echa un vistazo a tu localhost en el archivo hosts en "/etc/hosts"
en mi caso, resolver el localhost a 127.0.0.1 resolvió completamente el problema
@coolboy88 la corrección que sugiere en /etc/hosts
ya se ha sugerido en este problema. Y ya se informó en este número que hacerlo no es suficiente para solucionar el problema, incluso en mi propio caso.
@coolboy88 & @ecbrodie : La sugerencia de coolboy88 funcionó para mí. Gracias :)
Tenía el mismo problema aquí. Lo que estaba sucediendo en mi configuración era un problema de permisos, tuve que ejecutar el siguiente comando en la carpeta del proyecto:
sudo chown -R myuser:staff myfolder
Después de eso react-native run-ios
y se ejecutó correctamente.
Cuando lo sufrí, lo resolví con seguir
rm -rf ios/build
react-native run-ios
La primera vez que me encontré con problemas al usar el comando "init". Esta noche, recibí el error "No hay URL de paquete presente". Esto fue en un nuevo iMac, una nueva instalación de OSX y una nueva versión de Xcode.
Después de revisar varias publicaciones aquí, asumí que (el simulador) necesitaba poder acceder a localhost: 8081 en el que se estaba ejecutando el empaquetador. Por alguna razón, Safari no estaba resolviendo localhost y tampoco iOS Simulator (aunque otros navegadores estaban bien). Todavía no lo he descubierto y terminé modificando AppDelegate.m para usar 127.0.0.1 en su lugar (gracias a una publicación anterior):
jsCodeLocation = [NSURL URLWithString:@"http://127.0.0.1:8081/index.ios.bundle?platform=ios&dev=true"];
No estoy seguro de si esta es una solución realmente buena tbh (no soy fanático de la codificación). Pero funcionó.
Para mí ejecutar la segunda vez, todo salió bien! :) salud
@colorfulberry , después de cambiar el nombre de mi proyecto, su respuesta ayudó, gracias
Simplemente funcionó para mí agregando export REACT_NATIVE_FSOP_TIMEOUT=150000
a la fase de compilación "Bundle React Native code and images". El valor predeterminado es 15000 y mi aplicación tenía material de realidad virtual y un MP4 de 60 MB.
Encuentro este error casi siempre después de ejecutar react-native run-ios
. Mi solución:
Mantenga el empaquetador y el simulador en ejecución, y simplemente ejecute react-native run-ios nuevamente en la terminal.
Como dijo @Adamnator92 , recibí el mismo error cuando cambié el nombre del directorio de mi proyecto. Tenía algunas letras mayúsculas y cambié el nombre del directorio para que estuviera todo en minúsculas cuando comenzó este problema. Cuando le cambié el nombre para que volviera a tener las letras mayúsculas originales, todo empezó a funcionar de nuevo.
Ayer no tuve problemas, luego volví a cargar la aplicación hoy y recibí este error.
Cambié NSAppTransportSecurity como @yustada mencionado anteriormente, y se construyó. Luego lo cambié de nuevo y se construyó con éxito nuevamente. Estoy muy confundido en cuanto a cómo sucedió esto.
No hay problema cuando construyo a través de xcode.
Acabo de encontrar este problema nuevamente después de hacer que funcionara la semana pasada, usando una combinación de las diferentes soluciones aquí (incluida la degradación a v0.44.2)
Ahora, esta mañana, mi certificado de firma expiró y tuve que generar uno nuevo en Xcode. Sin cambiar nada más, dejó de funcionar después de compilar la aplicación con el nuevo certificado.
Ejecutar rm -rf node_modules
y luego npm install
pareció arreglarlo
A veces puede obtener este error si no ejecuta npm link
Cambié el nombre de index.ios.js a index.js y aparece este error para la ejecución de lanzamiento de Xcode. Cambiarle el nombre a index.ios.js resuelve el problema.
Encontré lo mismo porque en mi aplicación estaba cargando WebView con src desde un archivo local.
después de modificar mi Info.plist con la solución de @yustada solucioné mi problema.
NSExceptionDomains servidor local NSExceptionAllowsInsecureHTTPLoads NSpermite cargas arbitrarias NSAllowsArbitraryLoadsInWebContent NSpermite redes locales
(para iOS)
En mi caso, pude ejecutar en el simulador, pero fallé en el dispositivo o en la compilación de versión.
Fue porque faltaba mi script en Build Phases y no se generó jsbundle.
Agregué el script "Bundle React Native code and images" como este: (Shell: /bin/sh)
export NODE_BINARY=node
../node_modules/react-native/packager/react-native-xcode.sh
* "empaquetador" podría ser "scripts" basados en la versión nativa de reacción. Puede verificar la carpeta /node_modules/react-native/ y elegir una existente.
Después de revisar todos estos comentarios, no encontré ninguna solución que me funcionara. Mi terminal empaquetador tiene un error de propagación es6 y creo que está relacionado con el problema #14858. Estoy ejecutando lo siguiente:
nodo: 6.11.1
npm: 3.10.10
reaccionar nativo: 0.46.3
Espero que resuelvan este problema pronto, porque ni siquiera puedo hacer que una aplicación de muestra despegue y funcione. Siento que ese es un problema importante
verifique la configuración de su proxy de red.
no use el modo global shadowsocks es una palabra para mí.
Me encontré con este problema después de detener la simulación y querer iniciarla de nuevo. Eliminé la simulación usando sudo lsof -i:8081
y kill -9 <pid>
en los pids devueltos desde el primer comando.
La solución literalmente fue ejecutar react-native run-ios
tres veces. Cada vez que avanzaba más.
Principalmente publicando esto para dar un aviso de que es posible que simplemente desee intentar usar el comando ejecutar varias veces antes de concluir que algo más está mal.
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
-- A veces, en el lanzamiento, cambiamos localhost al dominio de nuestra API, simplemente lo volvemos a cambiar en el esquema de depuración a localhost. funciona para nosotros
Literalmente intenté todo para que esto funcionara y finalmente se redujo a cerrar XCode y reiniciar mi Mac.
npm 4.2.0
nodo v8.0.0
reaccionar-nativo-cli 2.0.1
mac OS 10.12.5
Ninguno de los métodos anteriores resolvió mi problema. . .qué hacer
Para mí, esto fue el resultado de usar yarn para instalar ignite y luego hacer npm install. Dado que encender requiere hilo, todo funciona muy bien si ejecuto yarn add
en lugar de npm install
. Entonces, en general, podría tener problemas si está utilizando diferentes administradores de paquetes.
Eliminar la carpeta de compilación y compilar nuevamente funcionó para mí.
rm -rf ios/build
react-native run-ios
Tuve el mismo problema que @cesarkawakami : el "Bundle React Native code and images" desapareció de mi pestaña Build Phases en XCode cuando actualicé de 0.45 a 0.46.
Después de mirar mi archivo project.pbxproj, resulta que el comando react-native-git-upgrade
cambió la definición de la fase "Bundle React Native code and images", cambió su id, pero no pudo actualizar la lista Build Phase con la nueva identificación
Si tiene el mismo problema, puede buscar la cadena "Bundle React Native code and images" en su archivo project.pbxproj y asegurarse de que las identificaciones coincidan.
@pvanliefland : ¿puede indicar los pasos para cambiar el "código e imágenes de Bundle React Native"? Estuve atascado en este problema durante semanas y probé los pasos mencionados anteriormente, pero nada parece funcionar. Cuando creé un proyecto de muestra e intenté ejecutarlo, el proyecto simple funciona bien.
npm start
resolvió este problema para mí. ¿Alguna idea de por qué esto no se llamó automáticamente en react-native run-ios
?
@Amritakeshre : ¿pudiste ejecutarlo en modo de lanzamiento?
correr:
vigilante vigilar-del-todo
entonces corre:
inicio de npm
Hola a todos,
Recibo este error con la última versión de React Native cuando ejecuto
"run-ios nativo de reacción"
Intenté diferentes maneras, simplemente no pude funcionar :(
Descomprimiendo /Users/eric/.rncache/glog-0.3.4.tar.gz...
/Users/eric/Documents/Codes/react-native/Test123/node_modules/react-native/scripts/ios-install-third-party.sh:
línea 28: /Usuarios/eric/Documentos/Códigos/R: No existe tal archivo o directorio
/Users/eric/Documents/Codes/react-native/Test123/node_modules/react-native/scripts/ios-install-third-party.sh:
línea 28:
D/react-native/Test123/node_modules/react-native/scripts/ios-configure-glog.sh:
El fichero o directorio no existe
* CONSTRUCCIÓN FALLIDA *
Los siguientes comandos produjeron problemas en el analizador:
Analizar
/Usuarios/eric/Documentos/Códigos/react-native/Test123/node_modules/react-native/ReactCommon/yoga/yoga/Yoga.c
Analyze
/Usuarios/eric/Documentos/Códigos/react-native/Test123/node_modules/react-native/ReactCommon/yoga/yoga/YGNodeList.c
(2 comandos con problemas del analizador)
Los siguientes comandos de compilación fallaron:
PhaseScriptExecution Instalación de terceros
/Users/eric/Documents/Codes/react-native/Test123/ios/build/Build/Intermediates/React.build/Debug-iphonesimulator/double-conversion.build/Script-190EE32F1E6A43DE00A8543A.sh
(1 fallo)
Instalación de build/Build/Products/Debug-iphonesimulator/Test123.app
Se encontró un error al procesar el comando (domain=NSPOSIXErrorDomain,
código=2):
No se pudo instalar la aplicación solicitada
No se encontró un paquete de aplicación en la ruta proporcionada.
Proporcione una ruta válida al paquete de aplicaciones deseado.
Imprimir: Entrada, ":CFBundleIdentifier", no existe
El comando falló: /usr/libexec/PlistBuddy -c Imprimir:CFBundleIdentifier
build/Build/Products/Debug-iphonesimulator/Test123.app/Info.plist
Imprimir: Entrada, ":CFBundleIdentifier", no existe
¿Alguna solución sólida para resolver esto?
Gracias.
El miércoles 6 de septiembre de 2017 a las 5:41 p. m., 丶尘殇[email protected] escribió:
correr:
vigilante vigilar-del-todo
entonces corre:
inicio de npm—
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/facebook/react-native/issues/12754#issuecomment-327431741 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AXIFs549pH9SyL5pF9jfirI9oX1fLjqSks5sfmjfgaJpZM4MVA0m
.
Resuelvo este problema agregando
127.0.0.1 localhost
en anfitriones
Gracias a todos.
Resolví el problema eliminando espacio en el nombre de la carpeta del proyecto.
Sí, también lo resolví porque una de mis carpetas tiene '&'.
Pero la parte extraña, todavía estoy viendo esto.
///
/usr/bin/codesign --force --sign - --timestamp=none
/Users/eric/Documents/Codes/learn/reactnative/mySecondProject/ios/Build/Products/Debug-iphonesimulator/mySecondProject.app/PlugIns/mySecondProjectTests.xctest
* CONSTRUCCIÓN EXITOSA *
Los siguientes comandos produjeron problemas en el analizador:
Analizar /Usuarios/eric/Documentos/Códigos/aprender/reactnative/mySecondProject/node_modules/react-native/ReactCommon/yoga/yoga/YGNodeList.c
Analizar /Usuarios/eric/Documentos/Códigos/aprender/reactnative/mySecondProject/node_modules/react-native/ReactCommon/yoga/yoga/Yoga.c
(2 comandos con problemas del analizador)
Instalación de build/Build/Products/Debug-iphonesimulator/mySecondProject.app
Se encontró un error al procesar el comando
(dominio=NSPOSIXErrorDomain, código=2):
No se pudo instalar la aplicación solicitada
No se encontró un paquete de aplicación en la ruta proporcionada.
Proporcione una ruta válida al paquete de aplicaciones deseado.
Imprimir: Entrada, ":CFBundleIdentifier", no existe
El comando falló: /usr/libexec/PlistBuddy -c Imprimir:CFBundleIdentifier
build/Build/Products/Debug-iphonesimulator/mySecondProject.app/Info.plist
Imprimir: Entrada, ":CFBundleIdentifier", no existe
///
Entonces run-ios no funcionará.
Sin embargo, funciona si ejecuto xcode --> debug.
Solo con muchas advertencias como se muestra a continuación.
¿Alguna idea de cómo hacer funcionar run-ios?
estoy usando esto
Mac OS Sierra 10.12.6
Último Xcode 8.3.3
nodo 8.4.0
npm 5.4.1
reaccionar nativo - probado tanto 0.47.2 como 0.48.2
reaccionar-nativo-cli - 2.0.1
hilo 0.20.0
También probé lo siguiente y no funcionó
Gracias.
El miércoles 13 de septiembre de 2017 a las 6:15 a.m., rickcha [email protected] escribió:
Resolví el problema eliminando espacio en el nombre de la carpeta del proyecto.
—
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/facebook/react-native/issues/12754#issuecomment-328999588 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AXIFs_Ggnia4CGYkzHHatteucW3uHsr8ks5shwKEgaJpZM4MVA0m
.
Agregar localhost a NSAppTransportSecurity funcionó para mí.
NSExceptionDomains servidor local NSExceptionAllowsInsecureHTTPLoads tuapidomain.com NSIncluyeSubdominios NSTemporaryExceptionAllowsInsecureHTTPLoads NSpermite redes locales
El buen truco de "apagar y encender" funcionó para mí.
Reiniciar el simulador (Hardware -> Reiniciar) funcionó para mí.
He encontrado que la forma más fácil/rápida de omitir esto es salir de la aplicación dentro del simulador (2 x Cmd + Shift + H
) y reiniciar.
Gracias Yustada.
Realmente funcionó sin ninguna duda.
Si está utilizando REACT-NATIVE-ROUTER-FLUX versión < 4.0.0
Actualizamos a RN 0.47.2 y comenzamos a tener este error. Como sugirió @eemebarbe arriba, eliminamos la carpeta react-native dentro de ~/node_modules/react-native-router-flux/node_modules y el error desapareció. Llegamos a eliminar la carpeta de reacción en esa misma ubicación. No tuvimos que agregar nada a la configuración de ATS en el plist (solo tenemos Permitir cargas arbitrarias).
Esto también hizo un montón de advertencias (declaraciones duplicadas) que el empaquetador estaba lanzando en el lanzamiento
Recibí el mismo error cuando ejecuté el proyecto desde xcode.
esto se resuelve mi problema:
info.plist → Lista de propiedades de información → + Configuración de seguridad de transporte de aplicaciones → + Permitir cargas arbitrarias = SÍ
Hola,
Problema: me da un error cuando intento ejecutar/instalar la aplicación en el iPhone a través de Xcode. Funciona bien en el simulador (a través de la línea de comandos y Xcode)
Error:
Versión Xcode: 8.3.3
Probado en simulador de iOS: iPhone 6S - OS 10.3
Dispositivo: iPhone SE - OS 10.2.1
reaccionar nativo: 0.45.1
También intenté eliminar la compilación de ios de mi carpeta proyecto/ios.
Funciona bien para Android ob tanto en el dispositivo como en el emulador.
Alguna ayuda. Gracias !!
En la mayoría de los casos, este problema ocurre cuando la búsqueda de DNS/búsqueda de IP no puede encontrar localhost.
Intente agregar la ip localhost a su archivo de host, etc.
puede agregar las siguientes líneas a su archivo de host, etc. (/etc/hosts)
127.0.0.1 servidor local
255.255.255.255 servidor de difusión
::1 servidor local
_## Para confirmar que este es el problema_
puede presionar la URL del paquete en Safari (si lo prueba en Chrome, esto se resolverá, pero Safari no podrá resolverlo). http://localhost :8081/index.ios.bundle?platform=ios&dev=true&minify=false
@vivekvijayakrishnan , Mi archivo de hosts contiene el par de direcciones anterior.
tratar
rm -rf ios/construir/; reaccionar-nativo run-ios
Lo intenté
rm -rf ios/build
react-native run-ios
y solucionó mi problema.
en mi caso vigilante era el problema.
Lo reinstalé y todo empezó a funcionar de nuevo.
Me encontré con este problema también.
Parece que cada vez que cambié Info.plist esto sería golpeado.
La única forma de resolverlo para mí fue desmarcar "ejecutar script solo al instalar" en las fases de compilación.
Verifiqué esto porque en algún lugar de react-native-xcode.sh está colgado. (ese es otro problema que necesito resolver, supongo)
Entonces, en este momento, la única forma de superar esta pantalla roja es
La siguiente solución, como se menciona en el encabezado de la publicación anterior, funcionó para mí:
Ejecute "react-native run-ios"
Cuando aparezca el error, ejecute "npm install"
Luego ejecute "react-native run-ios" nuevamente.
Para mí, este problema puede ocurrir fuera del servidor proxy que uso. Todo lo que necesito es pasar por alto el localhost.
Lo que me solucionó: poner en mayúscula la primera letra del nombre del componente registrado. Totalmente mentales. ¿Solo porque? Ese no es el error que se informó.
Ninguna de las soluciones anteriores me funcionó durante los últimos meses. En otras versiones, pude cambiar jsCodeLocation de la siguiente manera:
jsCodeLocation = [NSURL URLWithString:@" http://127.0.0.1 :8081/index.ios.bundle?platform=ios&dev=true"];
Pero esto ya no funciona con las últimas versiones de react-native.
De todos modos, esta es LA razón por la que he vuelto al desarrollo Swift nativo en iOS. Sin embargo, disfruté mucho trabajar con react-native cuando pude hacerlo funcionar.
Decidí reiniciar mi proyecto en la última versión de React Native (0.50.1 en ese momento) y comenzó a funcionar después de mover todo desde el proyecto anterior.
Estoy desconcertado, pero al menos puedo continuar ahora.
Descubrí que la solución que proporcionó @popstheman funcionó para mí, usando react-native 0.50.3. Si elimino todas las ventanas de mi terminal y el simulador y luego vuelvo a ejecutar la compilación, el error vuelve, pero npm install y react-native run-ios lo arreglan nuevamente.
Inicio el proyecto mediante create-react-native-app y luego npm run eject , así que si solo ejecuto react-native run-ios
surgirá este problema, así que solo abro xcode y luego ejecuto el proyecto , funcionará bien.
referencia de
Puede ejecutar npm run eject para obtener un proyecto muy similar al que generaría react-native init. En ese momento , necesitará Xcode y/o Android Studio tal como lo haría si comenzara con react-native init , agregar bibliotecas con enlace react-native funcionará y tendrá control total sobre el proceso de compilación de código nativo.
https://facebook.github.io/react-native/blog/2017/03/13/introducing-create-react-native-app.html
Espero que esto ayude un poco.
Finalmente pude hacer que esto funcionara. En las versiones más nuevas de react-native (acabo de probar con v0.51.0), el truco jsCodeLocation en AppDelegate.m aún funciona, pero debe usar index.bundle en lugar de index.ios.bundle. Por lo tanto, debería ser así (debería comentar la asignación jsCodeLocation existente y reemplazarla con la siguiente):
jsCodeLocation = [NSURL URLWithString:@" http://127.0.0.1 :8081/index.bundle?platform=ios&dev=true"];
SOLUCIÓN:
No olvide hacer un enlace nativo de reacción si usa alguna biblioteca que lo necesite
La razón por la que esto soluciona el problema es porque ..ios/build NO se actualiza cuando cambiamos las rutas del proyecto o simplemente cuando cambiamos el directorio de nuestro proyecto. No hay forma de que el empaquetador pueda rastrear los cambios, por lo que se apega a las últimas rutas conocidas.
No lo pienses demasiado, ya lo hicimos. Sin embargo, esto aún debe ser automatizado por el equipo de RN.
Estoy usando IntelliJ para desarrollar y, en mi caso, por alguna razón, IntelliJ dejó de llamar a react-native start
automáticamente antes react-native run-ios
cada vez que construyo mi proyecto, pero si ejecuto el proyecto en modo de depuración, entonces Se llama react-native start
y todo funciona bien.
Ahora necesito averiguar por qué react-native start
ya no se llama IntelliJ en el modo de compilación.
no se como pero funciona gracias
también personas, busque: error común en reaccionar nativo
es útil
@vegidio ¿Hizo algún progreso y vio por qué no se llama a start
?
@NARUTOyuyang trabaja para mí, usé xxNet... y abrí la opción globalProxy...
Cerré la opción de proxy global y luego trabajé.
1.rm -rf ios/compilación
2.sudo vi /private/etc/hosts
# Add this line
127.0.0.1 localhost
funciona para mi.
Agregar localhost a AppTransportSecurity también fue mi problema. Construido para la producción y tuve que sacarlo, cuando volví a trabajar en él tuve que volver a ponerlo.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
después de actualizar a Xcode 9.2, necesito agregar el siguiente fragmento de código en info.plist para solucionar este problema.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
@simplepanda En mi caso, aparentemente fue un problema con IntelliJ. Tenían un error relacionado con React Native que se solucionó en la última versión (2017.3.2) y vuelve a funcionar después de actualizar.
Mi historia: había estado usando Xcode para crear una aplicación React Native para iOS durante algunas semanas (el último React Native, el último Xcode (9.2), en High Sierra) y todo funcionaba muy bien. De repente, hoy, recibí el temido "No hay URL de paquete presente".
Leí atentamente todas las respuestas aquí. Intenté algunas cosas, pero nada realmente funcionó. Luego noté, al comienzo de los mensajes en la consola de Xcode, un mensaje que decía algo así como "no se puede usar http:// simple...", y tal vez algo sobre Transport Security. Ahora, mi aplicación no usa ninguna URL (y mucho menos una URL vacía), por lo que esto fue un poco desconcertante. En cualquier caso, probé lo que sugirieron Phil Andrews (y zjx): poner una excepción para "localhost" en NSAppTransportSecurity en info.plist.
¡Y funciona! ¡Por qué esto funcionó sin esto antes y ahora esto es necesario, es realmente un misterio!
Intentar
npm install metro
Lo solucione por un bug
Si alguien quiere un script para activar/desactivar la seguridad del transporte en Info.plist
:
var fs = require('fs');
var plist = require('plist');
function modifyIosTransportSecurity(plistPath, enable) {
var info = plist.parse(fs.readFileSync(plistPath, 'utf8'));
info.NSAppTransportSecurity.NSAllowsArbitraryLoads = !enable;
info.NSAppTransportSecurity.NSAllowsArbitraryLoadsInWebContent = !enable;
info.NSAppTransportSecurity.NSAllowsLocalNetworking = !enable;
fs.writeFileSync(plistPath, plist.build(info));
}
Llamo a esto desde un script previo y posterior a la compilación que se agregó a las fases de compilación de XCode.
Hay dos aplicaciones (mismo proyecto) en el simulador. Una vez que eliminé el nuevo, el problema se resolvió.
si marca esto, Xcode no puede registrar algún error... desmárquelo y encuentre el error
''indefinido no es un objeto (evaluando '_reactNative.ViewPropTypes.style')''
y haz esto:
1 importar ViewPropTypes desde react-native
2cambie View.propTypes a ViewPropTypes
y me funciona.
si recientemente actualizó su versión RN, es posible que tenga esto.
tuve este error solo modo de liberación. y el modo dev funcionan bien... he probado las soluciones casi todas las anteriores, pero ninguna funciona.
:
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbac kResource:nil ];
"react": "16.0.0-alpha.12",
"react-dom": "16.0.0-alpha.12",
"react-native": "0.51.0",
y hace unos días, solo actualice 0.44 a 0.51.0. si este problema no puede solucionarse. Volveré a la versión inferior. Pruébalo.
No estoy seguro de si esto los ayudará, pero cambié mi configuración de compilación en Xcode (Producto => Esquema => Editar esquema) nuevamente a Depurar y funcionó.
Este trabajo para mí:
react-native link
react-native run-ios
Según este hilo y algunos otros, hay muchos errores que causan este problema.
Pero el mío estaba relacionado con el dominio localhost. Así que asegúrese de haber configurado 127.0.0.1 localhost
en su archivo /etc/hosts para Linux/Unix o equivalente en Windows.
si su proyecto se abrió por xcode. cierra el xcode y vuelve a ejecutarlo, me funciona
Hola tios,
Lo resolví en mi dispositivo reemplazando en AppDelegate.m:
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];
Por:
http://IP_ADDRESS_ON_MY_LAN:8081/index.ios.bundle?platform=ios&dev=true
Donde IP_ADDRESS_ON_MY_LAN = 192.168....
Encontré el mismo problema después de la versión de lanzamiento de compilación (en ios).
Cambié lo siguiente y obtuve un resultado normal.
1) cambiar los códigos de AppDelegate.m:
comentario
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
y descomentar
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
2) volver a habilitar ATS localhost en Info.plist
Configuración de seguridad de transporte de aplicaciones -> Dominios de excepción -> localhost -> NSExceptionAllowsInsecureHTTPLoads -> TRUE
3) ejecute react-native run-ios nuevamente y vuelva a cargar la aplicación en el simulador
@monkingame ¡ Gracias, la parte localhost me salvó el día!
@monkingame Gracias, el cambio de comentarios funcionó para mí. Para empezar, no tengo idea de qué causó que este error comenzara a ocurrir, comenzó después de que hice la compilación de producción y quería volver a la depuración. ¿Cómo cambió eso la ubicación del código?
Este trabajo para mí.
rm -rf ios/build
react-native run-ios
Este trabajo para mí.
rm -rf ios/build/; kill $(lsof -t -i:8081);
react-native run-ios
correr
inicio de hilo o inicio npm
para iniciar el servidor de desarrollo
si es necesario ejecutar de nuevo:
reaccionar-nativo run-ios
Para mi por alguna razon el jsCodeLocation
cambio en AppDelegate.m
asegúrate de que sea
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
De otro hilo después de probar todo, esa solución funcionó:
"esto se resolvió mi problema:
info.plist → Lista de propiedades de información → + Configuración de seguridad de transporte de aplicaciones → + Permitir cargas arbitrarias = SÍ"
Lo resolví al incluir el siguiente código en el archivo Info.plist que había eliminado de la compilación de producción.
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>localhost</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>
Muchacho fácil, simplemente elimine ios/build ( rm -rf ios/build
) y luego ejecute react-native run-ios
nuevamente. Tómame 30 minutos para averiguarlo... LOL...
@jiteshwadia me ocurrió el mismo problema.
¿¿que tengo que hacer ahora??
Para mí, tenía un problema con el nodo que no se reconocía en ninguna pestaña nueva abierta. Así que tengo que usar nvm use
en cada pestaña nueva. Debido a que el paquete se estaba abriendo en una nueva pestaña cuando ejecuté npm run ios
, no estaba viendo Node. Y no puedo escribir en ese terminal de paquete por alguna razón.
Así que mi solución fue en una pestaña ejecutar nvm use 8.9.3
o cualquier versión en la que esté, luego en esa pestaña ejecutar npm start
. Luego abra una nueva pestaña y haga nvm use 8.9.3
y en esa pestaña ejecute npm run ios
o como quiera que ejecute su simulador.
Este trabajo para mí.
react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios'
Tuve el mismo problema y después de probar todo aquí, la respuesta de qyvip me llevó a la correcta.
En ios>"Su carpeta de proyecto principal">AppDelegate.m .
actualizar
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbac kResource:nil ];
ser - estar
jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbac kResource:nil ];
Esto funcionó para mí. Comprueba que tu main.jsbundle
esté destinado a tu proyecto principal.
También tuve que limpiar los cachés.
Agregar NSAllowsArbitraryLoads: true resolvió mi problema.
Comentario más útil
Mi problema se resolvió agregando
NSAllowsLocalNetworking
a Info.plistNo estoy seguro de que se deba a un problema con RN0.42 o iOS, pero en mi caso está resuelto.