Desarrollo de aplicaciones móviles multiplataforma

Desarrollamos apps para iOS y Android a partir de un único código en React Native: un equipo, un backend y publicaciones simultáneas en ambas tiendas. Si a su producto le conviene más lo nativo, se lo decimos antes de la estimación.

Desarrollo de aplicaciones móviles multiplataforma

Cuándo un único código es la respuesta correcta

El desarrollo multiplataforma funciona cuando la app gira en torno al contenido y a las peticiones a un servidor. Funciona mal cuando el producto vive de gráficos exigentes, procesamiento constante en segundo plano o funciones de plataforma recién lanzadas.

Qué incluye

Evaluación de plataforma

Antes de la estimación revisamos las funciones y le decimos si React Native encaja. Si una parte crítica necesita código nativo, le indicamos dónde está y qué parte de la app afecta.

Diseño para ambas plataformas

Un mismo diseño adaptado a las convenciones de iOS y Android: navegación, gestos, diálogos del sistema, comportamiento del botón atrás. No un diseño de iPhone estirado sobre Android.

Desarrollo en React Native

Código compartido para las pantallas, la lógica de negocio y las peticiones al servidor. Trabajamos por sprints, y cada uno termina con una versión para ambas plataformas que puede instalar y probar.

Módulos nativos

Cuando el código compartido no llega lo bastante lejos, como con un SDK de un proveedor, una función de hardware o el trabajo en segundo plano, escribimos módulos nativos en Swift y Kotlin y los conectamos a la app.

Un backend para ambas apps

API, base de datos, panel de administración y notificaciones push desarrollados una sola vez y usados por ambas apps, y por una versión web si la necesita. Python o PHP (Laravel), según la tarea.

QA, publicación y actualizaciones

Pruebas en iPhone y teléfonos Android reales, publicación en App Store y Google Play y actualizaciones tras el lanzamiento, incluidas las de React Native y sus bibliotecas.

Dónde funciona lo multiplataforma y dónde no

Dónde funciona lo multiplataforma y dónde no

Un único código para iOS y Android suele costar bastante menos que dos apps nativas y requiere menos tiempo de calendario, porque la mayor parte del código, el diseño y las pruebas se comparten. El intercambio compensa cuando la app muestra contenido, listas y formularios y se comunica con un servidor. Funciona mal cuando el producto depende de interfaces con mucha animación, funciones basadas en la cámara, procesos largos en segundo plano o API de la plataforma que llegan primero a los SDK nativos. Le decimos cuál de los dos casos es su producto antes de la estimación, no después de la primera versión.

Un equipo, un backend, un calendario de publicaciones

Un equipo, un backend, un calendario de publicaciones

Con dos apps nativas gestiona dos códigos, dos conjuntos de errores y, a menudo, dos fechas de publicación. Con React Native, una función se escribe una vez y se publica en ambas tiendas a la vez, y las mismas personas responden por las dos plataformas. La parte de servidor también se comparte: una API y un panel de administración sirven a ambas apps y, si hace falta, a un cliente web. Metacognit.me, una app de corrección metacognitiva y diagnóstico de psicotipos, está construida exactamente así: un cliente en React Native para iOS y Android y un backend en Python.

Preparado para pasar a nativo, si alguna vez llega el momento

Preparado para pasar a nativo, si alguna vez llega el momento

Empezar en multiplataforma no le ata. El backend y la API sobreviven al paso a nativo; el código del cliente, no. Por eso diseñamos la API para que un futuro cliente nativo o web pueda usarla sin cambios, y mantenemos aisladas en módulos nativos las partes específicas de cada plataforma. Hemos hecho migraciones en ambas direcciones. Para Quaker, una app de cocina de una empresa de reparto de comida en Dubái, sustituimos una app híbrida con tecnología obsoleta por dos clientes nativos cuando las diferencias entre plataformas empezaron a importar para el producto.

Cómo se desarrolla un proyecto multiplataforma

01

Evaluación y estimación

Revisamos las funciones y las integraciones y comprobamos qué necesita código nativo. Recibe por escrito el alcance, una recomendación entre React Native y nativo y una estimación.

02

Diseño

Prototipo e interfaz final adaptados a ambas plataformas. Usted aprueba las pantallas para iOS y Android antes del desarrollo.

03

Desarrollo

Primero el código compartido, módulos nativos donde hagan falta y el backend en paralelo. Tras cada sprint instala versiones nuevas en ambas plataformas.

04

Pruebas en dispositivos

QA en iPhone y teléfonos Android reales con distintas pantallas y versiones del sistema. Recibe una única versión probada para ambas tiendas.

05

Publicación y soporte

Publicación en App Store y Google Play con sus cuentas y, después, actualizaciones, correcciones y mejoras del framework durante el tiempo que las necesite.

Tecnologías

Multiplataforma

Módulos nativos

Backend y API

Cómo podemos colaborar

Alcance cerrado

Una lista de funciones, una estimación y unos plazos acordados para ambas plataformas. Una opción habitual para un MVP que debe lanzarse en las dos tiendas.

Equipo dedicado

Un equipo multiplataforma que trabaja de forma continua en su app. Adecuado para productos que publican a menudo y planifican su hoja de ruta sprint a sprint.

Por horas

Pago por las horas realmente dedicadas. Adecuado para auditorías de una app existente en React Native, actualizaciones del framework y funciones más pequeñas.

Opiniones

Tratamos a cada cliente y su proyecto con atención.

Preguntas frecuentes

¿Notarán los usuarios que la app no es nativa?

En los escenarios para los que sirve lo multiplataforma, no. Donde sí lo notarían, como en interfaces con mucha animación, funciones basadas en la cámara o trabajo prolongado en segundo plano, le recomendamos el desarrollo nativo en lugar de prometer que el código compartido podrá con ello.

¿Cuánto más barato es lo multiplataforma que dos apps nativas?

Suele ser bastante más barato y rápido, porque la mayor parte del código, el diseño y las pruebas se comparten. La diferencia exacta depende de cuántas funciones específicas de cada plataforma necesite la app. Le damos cifras concretas en la estimación de su app, no un porcentaje general.

¿Podemos empezar en multiplataforma y pasar a nativo más adelante?

Sí, y hemos hecho la migración en ambas direcciones. Conviene planificarlo pronto, porque el backend y la API sobreviven al cambio, mientras que el código del cliente no.

¿Publican ustedes las apps en las tiendas?

Sí. Preparamos las versiones, las fichas y los metadatos, pasamos la revisión de App Store y Google Play y hacemos las correcciones que pida la revisión. Las apps se publican en sus propias cuentas de desarrollador.

¿Cómo se calcula el precio?

Dividimos la app en funciones, estimamos cada una en horas y sumamos el diseño, el backend, QA y la publicación. Después puede elegir alcance cerrado, un equipo dedicado o trabajo por horas. No publicamos precios porque el esfuerzo varía demasiado de una app a otra.

¿Pueden hacerse cargo de una app existente en React Native?

Normalmente sí. Empezamos revisando el código: versiones de React Native y de las bibliotecas, módulos nativos y proceso de compilación. Obtiene una imagen clara del estado de la app y de lo que implicarán los primeros meses, incluido si hace falta una actualización o una reescritura parcial.

Cuéntenos su proyecto

Describa la tarea en unas líneas. En un día laborable le responderemos con preguntas o con una primera valoración del alcance y el coste.

¿Prefiere el correo electrónico o una llamada?

welcome@revolsource.com
+38 097 662 23 20

Revol Software OÜ, Tallin (Estonia). Nuestro equipo está distribuido por todo el mundo.

Únase a nuestro equipo

Envíe su CV a career@revolsource.com