Skip to content

Problemas en el Despliegue

Paso 7 de 7

A veces las cosas se rompen. Es parte del desarrollo. Cuando veas un error rojo en tu terminal o en el dashboard de Expo, no entres en pánico. Usa esta guía para convertirte en un detective de errores.

1 El Arte de Buscar Errores

La mayoría de los errores de build son crípticos, pero contienen la clave de su propia solución. El truco está en saber qué ignorar y qué copiar.

Cómo buscar errores de programación efectivamente

Mal término de búsqueda

Error building app /Users/miusuario/proyectos/app/android/gradle...

Demasiado específico a tu máquina. Google no conoce tu carpeta de usuario.

Buen término de búsqueda

expo build android gradle failure :app:mergeReleaseResources

Céntrate en el nombre de la tarea que falló y el código de error.

2 Galería de Horrores (Errores Comunes)

Aquí tienes los sospechosos habituales. Si te encuentras uno, ¡tienes suerte! Ya sabemos cómo arreglarlo.

Quejas de Gradle (Java Version)

La Causa: eas build usa una imagen de servidor (Ubuntu) por defecto que quizá tiene una versión de Java distinta a la de tu PC.

La Solución: Fuerza la imagen “latest” en tu eas.json para asegurarte de tener herramientas modernas:

"android": {
"image": "latest"
}

Crash con IDN.toASCII

La Causa: Estás usando un guion bajo (_) o caracteres especiales en el nombre de tu proyecto (slug) o en la URL de tu backend. El sistema de dominios (DNS) odia los guiones bajos.

La Solución:

  1. Revisa tu app.json -> expo.slug. Cambia mi_app_pro por mi-app-pro.
  2. Revisa tus variables de entorno (.env).
  3. Si estás en local con un túnel (Ngrok), reinicia el servidor.

Keystore Mismatch

La Causa: Intentas subir una actualización a la Play Store firmada con una llave distinta a la versión anterior. Google rechaza esto por seguridad.

La Solución: Si perdiste la jks original y la app ya es pública, es grave. Debes contactar a soporte de Google Play.

Queue / No Space

El Síntoma

No space left on device o tiempos de espera de +30 minutos.

La Causa: El plan Free de Expo tiene recursos limitados y colas compartidas. A veces los node_modules gigantes llenan el disco del builder.

La Solución: Usa eas build --local si tienes un PC potente, o optimiza tus assets.

3 Analizando los Logs

Investigando logs de EAS

Cuando el build falla, EAS te da un enlace a una página web. No cierres la pestaña, ¡úsala!

  1. Abre el enlace del build fallido.
  2. Busca la sección Run gradlew (Android) o Run fastlane (iOS).
  3. Están colapsadas por defecto. Expándelas.
  4. Haz scroll buscando texto en color ROJO .
  5. Copia solo la línea del error rojo en Google (o pregúntale a ChatGPT).

4 El Infierno de las Dependencias

A veces doctor te dice que todo está mal, o peor, te dice que todo está bien pero nada funciona. Aquí tienes los 3 niveles de solución, de menos a más destructivo.

Nivel 1: Alineación

Expo necesita versiones exactas de sus paquetes. Si instalaste algo manualmente, puede que tengas versiones mezcladas.

El Comando Mágico:

Terminal window
npx expo install --fix

Esto revisará tu package.json y aligneará todas las versiones a las recomendadas por Expo SDK.

Nivel 2: Limpieza (Cache)

A veces el empaquetador (Metro) se queda con archivos viejos en memoria. Si haces cambios y no los ves, o tienes errores extraños de importación:

El Reinicio Suave:

Terminal window
npx expo start -c

La flag -c significa --clear. Borra la caché temporal.

Nivel 3: La Opción Nuclear

Si nada más funciona, es hora de empezar de cero. A veces node_modules se corrompe sin remedio.

El Reinicio Duro:

  1. Borra la carpeta node_modules.
  2. Borra tu archivo de bloqueo (package-lock.json, yarn.lock o bun.lock).
  3. Reinstala todo.
Terminal window
# Si usas npm
rm -rf node_modules package-lock.json
npm install
# Si usas bun
rm -rf node_modules bun.lockb
bun install