Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Recomendamos los siguientes procedimientos recomendados para desarrollar aplicaciones WebView2 de producción.
Usar el tiempo de ejecución Evergreen WebView2
Se recomienda usar el tiempo de ejecución Evergreen WebView2 para la mayoría de las aplicaciones WebView2, en lugar de usar el tiempo de ejecución de versión no editable.
El tiempo de ejecución Evergreen se actualiza automáticamente en el cliente para que las características y revisiones de seguridad más recientes estén disponibles para la aplicación WebView2. El tiempo de ejecución Evergreen también requiere menos espacio de almacenamiento en el disco que el tiempo de ejecución de versión no editable. Versión no editable La distribución en tiempo de ejecución solo se recomienda para aplicaciones que tienen requisitos de compatibilidad estrictos.
Ve Evergreen vs. versión fija del tiempo de ejecución de WebView2.
Para asegurar que la aplicación WebView2 funcione bien con el tiempo de ejecución Evergreen WebView2, sigue los procedimientos recomendados en las subsecciones siguientes:
- Asegúrate de que el tiempo de ejecución de WebView2 esté instalado.
- Gestionar actualizaciones del tiempo de ejecución de WebView2.
- Realizar pruebas de compatibilidad con versiones posteriores mediante canales de versión preliminar de Microsoft Edge.
- Use la detección de características para las API más recientes.
Asegúrate de que el tiempo de ejecución de WebView2 esté instalado
Al usar el tiempo de ejecución Evergreen WebView2, antes de que la aplicación use el control WebView2, comprueba mediante programación que asegúrate de que el tiempo de ejecución Evergreen WebView2 está instalado en el cliente.
Consulta Detectar si ya hay un tiempo de ejecución WebView2 instalado en Distribuir la aplicación y el tiempo de ejecución WebView2.
Gestionar actualizaciones del tiempo de ejecución de WebView2
Al usar el tiempo de ejecución Evergreen WebView2, controla las actualizaciones del tiempo de ejecución Evergreen WebView2. Las novedades del tiempo de ejecución Evergreen WebView2 se descargan automáticamente, pero una aplicación WebView2 en ejecución seguirá usando su versión actual del tiempo de ejecución WebView2, posiblemente faltando actualizaciones de seguridad. Para adoptar la nueva versión, una aplicación debe liberar todas las referencias a objetos WebView2 anteriores o reiniciarse. La implementación de un NewBrowserVersionAvailable controlador de eventos puede pedir a los usuarios que reinicien la aplicación para obtener actualizaciones, con una recomendación para guardar el estado del usuario antes de salir para una transición sin problemas.
Consulta Gestionar actualizaciones del tiempo de ejecución de WebView2 perenne en Distribuir la aplicación y el tiempo de ejecución de WebView2.
Realizar pruebas de compatibilidad con versiones posteriores con canales de versión preliminar de Edge
Al usar el tiempo de ejecución Evergreen WebView2, ejecuta pruebas de compatibilidad hacia adelante mediante los canales de vista previa de Microsoft Edge (Beta, Dev o Canary).
Dado que Evergreen Runtime se actualiza automáticamente, debes ejecutar pruebas de compatibilidad con regularidad para asegurarte de que la aplicación WebView2 seguirá funcionando según lo previsto en la nueva versión de tiempo de ejecución. Para ello, pruebe el contenido web en el control WebView2 con los canales de vista previa de Microsoft Edge.
Siga las instrucciones en Pruebas previas a la versión preliminar con canales de versión preliminar de Microsoft Edge y Autohospedaje mediante la implementación de canales de versión preliminar.
Usar la detección de características para las API más recientes
Al usar el tiempo de ejecución Evergreen WebView2, usa la detección de características para probar si el tiempo de ejecución instalado admite las API agregadas recientemente. Para ejecutar una aplicación WebView2 desarrollada con una versión determinada del SDK de Webview2, el cliente debe tener instalada una versión compatible del tiempo de ejecución de WebView2.
Al usar el tiempo de ejecución Evergreen WebView2, hay algunos escenarios en los que el tiempo de ejecución de un cliente no se ha actualizado automáticamente a la versión más reciente. Además, algunas directivas de grupo pausan la actualización del tiempo de ejecución. Como resultado, al insertar una actualización en la aplicación WebView2, es posible que la aplicación no funcione si intenta llamar a API más recientes que no están disponibles en el tiempo de ejecución instalado del cliente. Por lo tanto, debes usar la detección de características para asegurarte de que las API más recientes que usa la aplicación WebView2 sean compatibles con el tiempo de ejecución de WebView2 instalado en el cliente.
Consulta Detección de características para probar si el tiempo de ejecución instalado admite las API agregadas recientemente en los SDK de versión preliminar y de versión para WebView2.
Actualiza periódicamente si usas el tiempo de ejecución de versión no editable
Si usas el tiempo de ejecución de WebView2 de versión no editable, asegúrate de actualizarlo periódicamente para reducir los riesgos de seguridad. Para determinar la frecuencia con la que debes actualizar el tiempo de ejecución de versión no editable, debes tener en cuenta el modelo de amenazas de la aplicación. Por ejemplo, al usar contenido de terceros en aplicaciones Webview2, considere siempre que el contenido no es de confianza.
Vea:
- Versión perenne frente a versión fija del tiempo de ejecución de WebView2
- El modo de distribución del tiempo de ejecución de versión no editable en Distribuir la aplicación y el tiempo de ejecución de WebView2.
Administrar la duración de la carpeta de datos de usuario
Las aplicaciones WebView2 crean una carpeta de datos de usuario para almacenar datos como cookies, credenciales y permisos. Después de crear la carpeta de datos de usuario, la aplicación es responsable de administrar la duración de la carpeta de datos de usuario. Por ejemplo, la aplicación debe limpiar cuando se desinstala.
Vea:
Gestionar errores o salidas del proceso en tiempo de ejecución
Las aplicaciones WebView2 son compatibles con una colección de procesos en tiempo de ejecución que se ejecutan junto con el proceso de la aplicación. Estos procesos en tiempo de ejecución auxiliares pueden producir errores por varias razones, como quedarse sin memoria o que el usuario los termine. La aplicación WebView2 debe controlar estos eventos relacionados con el proceso para asegurarse de que la aplicación puede recuperarse de los errores y seguir funcionando sin problemas.
Consulte Control de eventos relacionados con procesos en WebView2.
Controladores de eventos en el objeto de entorno
Si alguno de los controladores de eventos de la aplicación en el CoreWebView2Environment objeto contiene una referencia al objeto de entorno y la aplicación simplemente libera la referencia al entorno y a los controladores de eventos sin quitar los controladores de eventos, puede haber una referencia circular entre el objeto de entorno y los objetos de controlador, lo que perderá memoria.
Para evitar esta pérdida de memoria:
Para cualquier controlador de eventos agregado, quite el controlador de eventos antes de liberar el objeto de entorno.
Evite mantener una referencia al objeto de entorno en un controlador de eventos. En su lugar, el controlador de eventos puede tener acceso al objeto de entorno desde el
senderargumento de la devolución de llamada "evento completado".Si desea que la aplicación contenga una referencia a un objeto WebView2, use una referencia débil siempre que sea posible.
Seguir los procedimientos recomendados de seguridad
WebView2 le permite hospedar contenido web en sus aplicaciones nativas, proporcionando ventajas como el uso de la interfaz de usuario basada en web, el acceso a características de la plataforma web y el uso compartido de código entre plataformas.
Sin embargo, hospedar contenido web también puede presentar vulnerabilidades. Para evitar vulnerabilidades que pueden surgir del hospedaje de contenido web dentro de una aplicación nativa, asegúrese de diseñar la aplicación WebView2 para supervisar de cerca las interacciones entre el contenido web y la aplicación host.
Siga las instrucciones de Desarrollar aplicaciones WebView2 seguras.
Vea también
- Control de eventos relacionados con procesos en WebView2
- Detección de características para probar si el tiempo de ejecución instalado admite las API agregadas recientemente en los SDK de versión preliminar y de versión para WebView2.
- Versión perenne frente a versión fija del tiempo de ejecución de WebView2
-
Distribuir la aplicación y el tiempo de ejecución de WebView2
- Detectar si ya hay un tiempo de ejecución WebView2 instalado en Distribuir la aplicación y el tiempo de ejecución WebView2.
- El modo de distribución del tiempo de ejecución de versión no editable en Distribuir la aplicación y el tiempo de ejecución de WebView2.
- Gestionar actualizaciones del tiempo de ejecución Evergreen WebView2 en Distribuir la aplicación y el tiempo de ejecución de WebView2.
- Desarrollar aplicaciones WebView2 seguras
- Pruebas previas a la versión preliminar con canales de versión preliminar de Microsoft Edge
- Autohospedaje mediante la implementación de canales de versión preliminar
- Administrar las carpetas de datos de usuario
Referencia de WebView2:
Documentación de Microsoft Edge Enterprise: