Cómo actualizar tu app tras el lanzamiento: qué es instantáneo y qué necesita una versión en la tienda
Lo mejor de una app web empaquetada es que la mayoría de las actualizaciones son un despliegue, no un envío. Lo que la gente olvida es el resto: los iconos, los permisos, las funciones nativas y los requisitos anuales de las plataformas siguen necesitando una compilación. Aquí tienes la división, las reglas de versiones y una rutina de publicación que lleva alrededor de una hora.
Desde $109 de pago único por plataforma, o deja que nuestro equipo lo haga todo desde $698.
Garantía de aprobación – o te devolvemos el dinero en 14 días
Sin programar
Pago único, actualizaciones gratuitas
Soporte humano 24/7
Hecho en Alemania desde 2014 · ISO 27001
9:41
Tu app
Tu appYa en tu bolsillo
App Store · Google Play Aprobada
¿Al instante o actualización en la tienda?
Cambio
Cómo se publica
Notas
Páginas nuevas, funciones, corrección de errores, cambios de diseño en la app web
Al instante: despliega en Lovable, Bolt, Vercel o tu hosting
Todas las apps instaladas lo muestran en la siguiente carga; sin revisión
Textos, precios mostrados en la web, páginas legales
Al instante
Mantén los precios de las compras dentro de la app en las tiendas sincronizados con lo que muestra la app
Icono, nombre de la app, pantalla splash
Actualización en la tienda
Recursos nativos dentro de la compilación
Activar una función nativa (proveedor de push, biometría, escáner QR, AdMob, RevenueCat)
Actualización en la tienda
Un interruptor en Config más una nueva compilación; los permisos nuevos se revisan
Textos de permisos nuevos (cámara, ubicación, fotos)
Actualización en la tienda
Actualiza también las respuestas de App Privacy y el formulario Data safety si cambia el uso de datos
Cambiar la URL de inicio o el dominio
Actualización en la tienda
Evítalo eligiendo el dominio propio antes del lanzamiento
Actualización de la plantilla de WebViewGold (nuevo SDK de iOS, nivel de API objetivo de Play, privacy manifests)
Actualización en la tienda
Actualizaciones gratuitas; necesarias aproximadamente una vez al año para seguir pudiendo publicar
Texto y capturas de la ficha de la tienda
Sin compilación, pero con revisión
App Store: las capturas, la descripción y las palabras clave solo cambian con una nueva versión; el texto promocional y las URLs, en cualquier momento. Play: cambios en la ficha en cualquier momento, con revisión
Versiones bien gestionadas
iOS tiene dos números: la versión (CFBundleShortVersionString, por ejemplo 1.2.0) que ven los usuarios y el número de compilación (CFBundleVersion), que debe aumentar con cada subida, incluso para la misma versión. Android tiene versionName (texto libre que ven los usuarios) y versionCode, un entero que debe aumentar con cada subida a la Play Console. Defínelos en la pestaña General de Xcode y en build.gradle, o en los campos correspondientes del Cloud Builder. Mantén idéntica la versión visible para el usuario en ambas plataformas y usa major.minor.patch; así las conversaciones de soporte ("¿qué versión tienes?") son sencillas.
Tu app web tiene su propio ritmo de publicación, y ambos pueden desincronizarse de una forma importante: una función web que necesita una capacidad nativa (por ejemplo, un nuevo flujo con QR) no funcionará en las versiones de la app compiladas antes de activar esa capacidad. La App Version Check API de WebViewGold lo resuelve: navega a getappversion:// y la app define window.versionNumber y window.bundleNumber (o pon autoInjectVariable / AUTO_INJECT_VARIABLES en true para que se inyecten en cada página). Tu app web puede entonces ocultar la función o mostrar un banner de actualización en las instalaciones antiguas. Documentación: App Version Check (iOS) y Android.
Avisa a los usuarios con versiones antiguas de la app
Se ejecuta en cada carga de página dentro de la app. Compara con la versión más baja compatible con la app web actual.
javascript
const inApp = /WebViewGoldApp/.test(navigator.userAgent);
const MIN_APP_VERSION = "1.3.0";
function olderThan(a, b) { // "1.2.9" < "1.3.0"
const pa = a.split(".").map(Number), pb = b.split(".").map(Number);
for (let i = 0; i < 3; i++) { if ((pa[i] || 0) !== (pb[i] || 0)) return (pa[i] || 0) < (pb[i] || 0); }
return false;
}
if (inApp) {
window.location.href = "getappversion://"; // WebViewGold define window.versionNumber
setTimeout(() => {
if (window.versionNumber && olderThan(String(window.versionNumber), MIN_APP_VERSION)) {
document.getElementById("update-banner").hidden = false; // "Hay una nueva versión disponible" + enlace a la tienda
}
}, 800);
}
¡Estoy muy feliz de haber comprado esta aplicación! Documentación extremadamente fácil y excelente. Estaba en contacto con el servicio al cliente, respondieron muy rápido y de forma muy amigable. Resolvieron mi pregunta en un día. 10/10 lo recomendaría".
Alrededor de una hora de trabajo más el tiempo de revisión. Hazla cada vez que una fila de la tabla anterior diga "actualización en la tienda".
Actualiza la plantilla de WebViewGold si hay una versión nueva
Descarga la versión actual (las actualizaciones son gratuitas) y copia tus valores de Config.swift y Config.java, el icono, la splash, GoogleService-Info.plist o google-services.json y cualquier texto de permiso personalizado. Tu keystore de Android y tu clave de subida no cambian. Los usuarios del Cloud Builder se saltan este paso: el servicio compila con la plantilla mantenida.
Sube los números de versión y de compilación
Versión 1.2.0 → 1.3.0, número de compilación +1, versionCode +1.
Compila y sube
Xcode → Product → Archive → Distribute a App Store Connect; Android Studio → Build → Generate Signed Bundle → subida a la Play Console. O un clic en el Cloud Builder para ambas.
Haz una prueba rápida de la compilación
Pruebas internas de TestFlight y el canal interno de Play: inicio de sesión, permiso de push, pantalla sin conexión, un deep link desde un correo y una compra en sandbox si vendes algo. Quince minutos en un teléfono real; consulta la guía de pruebas.
Envía con un lanzamiento progresivo
Apple: elige el lanzamiento por fases (siete días, con un porcentaje que aumenta automáticamente y que se puede pausar) o la publicación manual tras la aprobación. Google: lanzamiento escalonado; empieza con un 10 a 20 por ciento y súbelo a lo largo de unos días, y detenlo si Play vitals muestra un pico de fallos.
Vigila las primeras 48 horas
Los fallos y las reseñas en App Store Connect, y Play vitals y los correos de políticas en la Play Console. Las correcciones del lado web se siguen publicando al instante mientras se despliega la compilación nativa.
Cosas que se rompen sin avisar tras un despliegue web
Cambiar el dominio o añadir una redirección en la URL de inicio: la app sigue cargando la URL antigua incrustada en la compilación.
Eliminar o mover /.well-known/apple-app-site-association y assetlinks.json: los deep links y los magic links dejan de abrir la app.
Cambiar las URLs de redirección de OAuth o la Site URL de Supabase sin actualizar los proveedores.
Un nuevo banner de cookies, un smart banner de "abrir en nuestra app" o una cabecera de escritorio que aparece dentro de la app: ocúltalos para el user agent de la app con tu CSS o con la inyección de CSS personalizado de WebViewGold.
Un rediseño que elimina el botón Eliminar cuenta o el enlace a la política de privacidad. La siguiente revisión de la tienda lo notará.
Un service worker que sigue sirviendo el bundle antiguo dentro de la app: sube la versión de la caché en cada despliegue.
Un JavaScript más pesado que retrasa el primer renderizado más allá del tiempo de espera de la splash; aumenta splashTimeout o activa remainSplashOption.
Mantén al día la plantilla de WebViewGold
Google sube el listón cada año
Las apps nuevas y las actualizaciones deben apuntar a una versión reciente de Android antes del plazo anual de Google. Una plantilla antigua no se puede subir después de esa fecha; la guía del nivel de API objetivo explica los plazos.
Apple exige SDK recientes
Las subidas deben compilarse con un Xcode y un SDK de iOS recientes, y las apps de iOS incluyen ahora privacy manifests. Las actualizaciones de la plantilla traen ambas cosas.
Llegan nuevas funciones nativas
Las actualizaciones añaden APIs (escáner de documentos, datos de salud, widgets) que puedes ofrecer a tu app web con un enlace cada una.
Compilar una vez al año es un buen hábito
Incluso sin cambios, compilar una vez al año con la plantilla actual mantiene la app publicable y la fecha de "actualizada" reciente para el ASO.
Preguntas frecuentes
¿Los cambios web provocan una revisión del App Store?
No. La revisión solo ocurre cuando envías una nueva compilación o cambias los metadatos de la ficha. El contenido de la app web puedes cambiarlo tú, siempre que la app siga coincidiendo con su ficha y con las directrices.
¿Con qué frecuencia debería volver a compilar la app nativa?
Al menos una vez al año por los requisitos de las plataformas, y además cada vez que cambies un icono, una función nativa o un permiso. Muchos equipos acaban publicando una actualización en la tienda cada uno o dos meses.
¿Puedo obligar a los usuarios a actualizar?
No a la fuerza, pero la comprobación de versión te permite bloquear las versiones antiguas de la app tras un mensaje con un enlace a la tienda cuando un cambio en el backend lo requiera.
¿Una actualización en la tienda cierra la sesión de los usuarios?
No. Las cookies y el localStorage sobreviven a las actualizaciones, salvo que estén activadas las opciones de borrado de caché de los archivos Config.
Tres formas de llevar tu app a las tiendas
El mismo resultado, con distinta cantidad de trabajo por tu parte. Las tres incluyen la garantía de aprobación y soporte humano 24/7.
Hazlo tú mismo
$109 por plataforma, pago único
La licencia de WebViewGold: un proyecto de Xcode o Android Studio listo para usar. Pega tu URL, define nombre e icono, activa funciones, compila y envía. Actualizaciones gratuitas para siempre.
Sin Mac, sin Xcode, sin Android Studio: configura en el navegador, compilamos ambas apps en la nube y las entregamos a App Store Connect y a Play Console.
Envíanos tu URL y tu icono. Nuestro equipo configura, compila y entrega tu app en 72 horas, en marca blanca y con los proyectos fuente. Ambas plataformas por $1,158.
Los reembolsos se conceden bajo las condiciones indicadas en nuestras FAQ: un rechazo por motivos ajenos al contenido por parte de Apple y/o Google, reclamado dentro de los 14 días posteriores a la compra.