La actualización que rompe en silencio la app de ayer

Actualiza el sistema o una biblioteca central y una app nativa que enviaste hace un año puede sencillamente dejar de funcionar. Una API se deprecia, un modelo de permisos cambia, una ruta de render se elimina —y la compilación que estaba bien en producción ahora falla o se niega a arrancar. La plataforma avanzó y tu programa viejo no recibió el aviso.

Un runtime de mini-programa adopta la promesa opuesta. Es versionado y el contrato es que un programa publicado contra una biblioteca base anterior siga abriéndose en runtimes más nuevos. El runtime lleva la superficie de compatibilidad; el programa no tiene que perseguir cada cambio de plataforma para seguir vivo.

Qué es realmente la compatibilidad versionada

El runtime expone una biblioteca base con versión mayor.menor.parche y la plataforma garantiza que runtimes más nuevos sigan ejecutando programas construidos contra bibliotecas base más viejas. WeChat lo documenta explícitamente: las capacidades nuevas se limitan por versión mínima de biblioteca base y los desarrolladores comprueban compatibilidad con wx.canIUse o wx.getAppBaseInfo en lugar de asumir que una función existe. La vista general de la biblioteca base de Alipay+ y el registro de cambios de Tuya declaran el mismo principio: las bibliotecas base "mantienen la compatibilidad hacia atrás" al añadir capacidades. WeChat incluso incluye una biblioteca base estable actual y una anterior en cada lanzamiento de cliente, para que los programas viejos sigan inicializándose.

En las apps nativas nada de esto está garantizado: una actualización del sistema es un cambio rupturista que llega a los usuarios aunque la app estuviera lista o no.

Dónde se nota la diferencia

PasoApp nativaRuntime de mini-programa (versionado)
Nueva versión de plataformaPuede romper compilaciones viejasLa biblioteca base vieja sigue corriendo
API deprecadaFallo o arranque bloqueadoDetectada por característica, elegante
Comprobación de compatibilidadPor dispositivo, manualcanIUse / comparación de versiones
Garantía de estabilidadNinguna a nivel de sistemaBiblioteca base retrocompatible
Vida del programaAtada al soporte del sistemaAtada al contrato del runtime

El resultado es que un programa publicado no tiene una fecha de caducidad ligada al próximo lanzamiento de plataforma. Sigue abriéndose hasta que el desarrollador decide retirar el soporte.

Por qué un contrato supera la esperanza

Un runtime versionado significa que el desarrollador puede publicar una vez y confiar en que el programa siga corriendo a medida que la plataforma evoluciona, con detección de características para lo más nuevo. También significa que el piso de biblioteca base es una configuración, no una apuesta: los desarrolladores eligen la versión mínima y el runtime hace el resto. El mismo programa sigue vivo tras la actualización del宿主, en cada super-app que respete el contrato de biblioteca base.

Cómo lo aplica Cross Mini App

Cross Mini App da a los programas un runtime versionado con un contrato de compatibilidad explícito: un programa construido contra una biblioteca base anterior sigue abriéndose en runtimes más nuevos, con detección de características para lo nuevo. Publicas un programa; el runtime garantiza que seguirá arrancando tras la próxima actualización. Dejas de volver a publicar solo para mantener viva la compilación de ayer.

Esa es la diferencia entre una app que caduca con el sistema y un programa que el runtime promete mantener abierto.

Fuentes