Análisis técnico de la aplicación híbrida: Principio de actualización en caliente de la aplicación híbrida

Desarrollo y lanzamiento de aplicaciones nativas y aplicaciones híbridas

1. Aplicación nativa

Todos sabemos que para las aplicaciones nativas tradicionales, el costo total de desarrollo es muy alto y el ciclo de lanzamiento es relativamente largo. Para las empresas que necesitan iterar su contenido comercial con frecuencia, ya sea actualizando módulos funcionales o reparando versiones defectuosas, deben volver a probar, volver a publicar, volver a enviar a las tiendas de aplicaciones de terceros para su revisión y listado, y solicitar a los usuarios que cooperen para instalar nuevas versiones. , para sobrescribir la versión anterior.

Organicé el proceso de desarrollo y lanzamiento de aplicaciones nativas en un diagrama de flujo, que debería ser más claro e intuitivo:

inserte la descripción de la imagen aquí

De hecho, todo el proceso de desarrollo y lanzamiento consiste en compilar el código fuente desarrollado en un paquete binario y luego colocarlo en las tiendas de aplicaciones de Android e iOS.

2. Aplicación mixta

Sin embargo, en los últimos años, se han desarrollado más y más aplicaciones híbridas, porque la mayoría de los desarrolladores aún están interesados ​​en la capacidad de actualización en caliente de la aplicación híbrida. Veamos el proceso de lanzamiento de las aplicaciones híbridas.

inserte la descripción de la imagen aquí

La mayor diferencia con la aplicación nativa es que el código contiene código HTML5 y esta parte del código se puede actualizar en línea directamente a través del modo de actualización en el servidor.

Principio de actualización en caliente de aplicaciones híbridas

Y una mirada más profunda a cómo se implementa la actualización en caliente de la aplicación híbrida, puede encontrar que su principio de funcionamiento es el siguiente:

Por lo general, el lado del servidor de la APLICACIÓN necesita monitorear la actualización de estos contenidos y luego enviar una notificación de actualización de contenido a la APLICACIÓN en el lado del dispositivo por algún medio técnico, y luego algunos componentes en la APLICACIÓN necesitan sincronizar algunos fragmentos de contenido de la página al cliente a través de la red y enviarlos. El contenido descargado, normalmente HTML y JavaScript, se inyecta en estos agujeros excavados previamente.

Aquí también quiero explicar que hay muchas soluciones técnicas para la sincronización de red, como a través de Web-Socket bidireccional, o a través de HTTPlongpolling, o a través de SSE, o a través de PushtoPull, u otros medios técnicos personalizados como CMS para lograrlo.

En el lado del dispositivo, el reemplazo del módulo activo HMR y la inyección de código generalmente se usan para hacer que el código actualizado surta efecto y se muestre localmente para evitar el reinicio de la aplicación.

inserte la descripción de la imagen aquí

Posibles problemas con actualizaciones calientes

En teoría, no se puede asumir que cualquier código fuente actualizado descargado de Internet sea seguro y creíble. Cuando estos códigos se inyectan en su aplicación para ejecutarse, ¿cómo detectar su seguridad y proteger la seguridad de las aplicaciones locales y los datos locales en el dispositivo?

Aquí hay una descripción de la tecnología de programa pequeño ampliamente respetada por los principales fabricantes. La solución para este pequeño programa es detectar y auditar en la nube, y usar el mecanismo técnico de seguridad sandbox en el lado del dispositivo para bloquear el código descargado y actualizado en un jaula y ejecutarlo en aislamiento. .

Además, el applet también tiene un fondo de administración para administrar la eliminación y eliminación de estantes, y todo el método en línea será más flexible.

Como se mencionó anteriormente, esta es la dirección técnica defendida por los principales fabricantes. La mayoría de los desarrolladores aún no pueden disfrutar de la comodidad que brinda la tecnología de programas pequeños, pero también existen tecnologías de contenedores de programas pequeños como FinClip para ayudar a los desarrolladores a crear un programa pequeño . medio de la nube, y la gestión de ciclo completo de programas pequeños desde el desarrollo hasta el lanzamiento se puede realizar a través del fondo de gestión del lado de la nube, de modo que pueda tener la capacidad de actualización en caliente de programas pequeños que solo tienen los principales fabricantes.

inserte la descripción de la imagen aquí

Este método tendrá un mejor efecto que el HTML5 ampliamente utilizado actualmente. Primero, el método de desarrollo será más conveniente y, segundo, la experiencia del usuario mejorará significativamente.

Supongo que te gusta

Origin blog.csdn.net/POHOU23/article/details/131917591
Recomendado
Clasificación