Saltar al contenido

Tecnología · Plataforma para React Native

Desarrollo de apps con Expo

Expo es la plataforma con la que hoy se empieza, se compila y se publica una app de React Native. Quita del camino la parte más ingrata de una app, los certificados, las compilaciones y los envíos a las tiendas, y permite corregir un fallo sin esperar a una versión nueva. Montamos el proyecto con Expo o migramos el tuyo.

Fig. 01Muelle de expediciónPRUEBACOMPILAR · PUBLICAR · ACTUALIZARMi appv1.4.0En bucle
La versión sale de la compiladora y pasa por el mostrador de la tienda antes de llegar al teléfono. Una corrección pequeña toma la vía directa y llega al abrir la app.

Situaciones

Qué puedes resolver con Expo

Expo no cambia lo que la app hace, sino lo que cuesta sacarla y mantenerla. Compensa cuando publicar una versión es hoy un trabajo manual que depende de una persona y de su ordenador.

  • Publicar deja de depender de un ordenador

    La app se compila y se firma en la nube, siempre igual, desde el repositorio. Nadie tiene que guardar certificados en su portátil ni recordar los pasos.

  • Una errata no espera a la tienda

    Un texto, un cálculo o una pantalla que falla se corrigen con una actualización que el teléfono descarga al abrir la app, sin pasar por una versión nueva.

  • Probar antes de publicar

    Cada cambio se puede instalar en los teléfonos del equipo con un enlace o un código, para verlo funcionar antes de que llegue a nadie más.

  • Una app React Native que cuesta actualizar

    Proyectos con carpetas nativas tocadas a mano que nadie se atreve a subir de versión. Con Expo esa parte se genera a partir de la configuración y deja de ser un freno.

El desvío: por el mostrador de la tienda o por la vía directa

Qué conviene revisar al empezar

  • Si la app es nueva o existe ya, y con qué versión de React Native
  • Qué bibliotecas nativas usa y si tienen soporte en Expo
  • Quién administra las cuentas de Apple y de Google y sus certificados
  • Qué cambios deben poder llegar sin publicar una versión nueva

Servicios

Qué desarrollamos con Expo

Cuatro piezas del mismo recorrido: del código al teléfono. Se pueden encargar juntas o solo la que hoy te frena.

  • Módulo 1 · Teléfono de pruebas

    Apps nuevas con Expo

    El proyecto montado con la estructura actual: navegación por archivos, acceso a cámara, ubicación y avisos con los módulos de Expo, y versiones de prueba instalables desde el principio.

    Ejemplos de entregables

    • App nueva para iPhone y Android
    • Migración de React Native a Expo
    • Versión de pruebas por enlace
  • Módulo 2 · Compiladora

    Compilación y firma en la nube

    Perfiles de compilación para pruebas y para producción, certificados y claves guardados en el servicio y no en un portátil, y una compilación nueva con cada versión del repositorio.

    Ejemplos de entregables

    • Perfil de pruebas y de producción
    • Certificados de Apple gestionados
    • Compilación automática al etiquetar
  • Módulo 3 · Mostrador

    Publicación en las tiendas

    Envío a App Store y a Google Play con la misma orden, con las fichas, las capturas y las respuestas a la revisión preparadas. La app sale desde tus cuentas.

    Ejemplos de entregables

    • Primera publicación
    • Pruebas con TestFlight
    • Respuesta a un rechazo de revisión
  • Módulo 4 · Vía directa

    Actualizaciones sin pasar por la tienda

    Canales de actualización para pruebas y para producción, despliegue por fases y vuelta atrás si algo falla. Sirve para lo que no toca código nativo; lo demás sigue yendo por la tienda.

    Ejemplos de entregables

    • Corrección urgente de un texto
    • Despliegue a una parte de los usuarios
    • Vuelta a la versión anterior

Un ejemplo en funcionamiento

Un cambio, dos caminos hasta el teléfono

Demostración simulada con datos ficticios. Elige qué ha cambiado en la app y síguelo: unas cosas llegan al abrir la app y otras necesitan una versión nueva y pasar por la revisión de la tienda.

Demostración simulada · datos de muestra

¿Qué ha cambiado en la app?

Actualización directa

  1. Empaquetar el código
  2. Canal de producción
  3. El teléfono la descarga al abrir

Versión nueva en la tienda

  1. Compilar en la nube
  2. Firmar
  3. Revisión de la tienda
  4. El usuario actualiza

Registro

    No hay ninguna tienda ni ningún teléfono detrás de esta demostración: el recorrido está simulado en tu navegador. La regla que enseña es la real: lo que toca código nativo va por la tienda.

    Integración

    Cómo encaja con tus sistemas

    Expo se sitúa entre tu código y los teléfonos. A un lado están el repositorio y las cuentas de desarrollador; al otro, las tiendas y los usuarios.

    De dónde viene

    • El repositoriocada versión etiquetada
    • Cuentas de Apple y Googlecertificados y claves
    ExpoProyecto con Expocompila, firma y reparte

    A dónde llega

    • App Store y Google Playversiones revisadas
    • Teléfonos del equipoversiones de prueba
    • Usuariosactualizaciones al abrir

    Dependencias que conviene revisar

    • Si alguna biblioteca nativa necesita una compilación propia
    • Dónde corre hoy la integración continua, si la hay
    • Qué plan del servicio de compilación pide tu ritmo de versiones
    • Qué permiten las tiendas actualizar sin pasar por su revisión

    Cómo trabajamos y qué entregamos

    Cómo trabajamos un encargo con Expo

    1. 01

      Revisión inicial

      Miramos el proyecto y sus dependencias nativas, las cuentas de las tiendas y cómo se publica hoy una versión.

    2. 02

      Alcance

      Escribimos qué se monta: perfiles de compilación, canales de actualización y qué queda fuera. Si algo no encaja con Expo, lo decimos.

    3. 03

      Primera entrega

      Una versión de prueba compilada en la nube e instalada en tus teléfonos, con su canal de actualizaciones funcionando.

    4. 04

      Validación

      Publicas una actualización y una versión de prueba siguiendo la guía, sin nosotros delante. Si un paso no se entiende, se corrige la guía.

    5. 05

      Documentación

      Cómo compilar, publicar, actualizar y volver atrás, y dónde están guardadas las credenciales.

    Qué recibes al cerrar el encargo

    • El proyecto configurado en un repositorio a tu nombre
    • Las credenciales en tus cuentas, no en las nuestras
    • Una guía para publicar y actualizar
    • La lista de lo que queda fuera y por qué

    Preguntas

    Preguntas sobre Expo

    ¿Falta la tuya? Escríbela a info@veodar.com y te respondemos con una pregunta concreta, no con un dossier.

    ¿Expo limita lo que puede hacer la app?

    Ya no. Hace años obligaba a renunciar al código nativo; hoy un proyecto con Expo admite cualquier biblioteca nativa y módulos propios en Swift o Kotlin. Lo que cambia es que esa parte se genera desde la configuración en lugar de editarse a mano.

    ¿Qué se puede actualizar sin publicar una versión nueva?

    El código JavaScript y los recursos: textos, pantallas, cálculos, imágenes. Lo que añade código nativo, un permiso nuevo o una biblioteca, por ejemplo, necesita una versión nueva y pasar por la tienda. Las tiendas, además, no permiten cambiar por esta vía el propósito de la app.

    ¿Hace falta un Mac para publicar en iPhone?

    Para compilar, no: se hace en la nube. Sí hace falta una cuenta de desarrollador de Apple a nombre de tu empresa, que es la que firma y publica la app.

    ¿Podéis migrar a Expo una app React Native que ya está publicada?

    En la mayoría de los casos sí, y por partes. Primero se incorporan los módulos de Expo; después, si compensa, la compilación en la nube y las actualizaciones. Antes revisamos las bibliotecas nativas que usa, que es donde puede haber trabas.

    ¿Dependemos de un servicio de pago?

    El framework es de código abierto y la app se puede compilar también en tus propias máquinas. La compilación en la nube y las actualizaciones son un servicio aparte, con sus propios planes; te explicamos cuál pide tu ritmo de versiones antes de montarlo.

    ¿Y si una actualización sale mal?

    Se vuelve a la anterior con una orden y los teléfonos la reciben al abrir la app. Por eso las actualizaciones se despliegan primero a un canal de pruebas y, si se quiere, a una parte de los usuarios antes que a todos.

    Actualizado:

    Otras tecnologías

    Con qué se combina

    Todas las tecnologías
    • Desarrollo de apps con React NativeUna sola base de código para iPhone y Android, con módulos nativos donde hacen falta. Creamos apps nuevas y continuamos las que ya tienes.
    • Notificaciones push a medidaAvisos que salen de tus sistemas y llegan al teléfono correcto en el momento oportuno, con permisos, segmentos y enlaces a la pantalla que toca.
    • Backend con Node.jsAPIs, conexiones entre sistemas y procesos en segundo plano. Automatizamos el intercambio de información entre tu web y tus herramientas de gestión.

    Empezar

    Cuéntanos cómo publicas hoy tu app.

    Si sacar una versión te cuesta más de lo que debería, con saber cómo lo haces ahora nos basta para una primera respuesta.

    Qué ayuda a valorarlo

    • Si la app es nueva o existe ya
    • Cómo se compila y se publica hoy
    • Qué bibliotecas nativas usa
    • Quién tiene las cuentas de las tiendas

    ¿Antes de escribir? Mira cómo presupuestamos un proyecto o las soluciones por área de la empresa.

    Fig. 07Manipulador MorseH · O · L · A