Cómo migrar a Manifest V3

Guía para convertir extensiones de Manifest V2 en extensiones de Manifest V3.

Esta sección te ayuda a actualizar una extensión de Manifest V2 a Manifest V3, la versión más reciente de la plataforma de extensiones de Chrome. El trabajo de migración se divide, en líneas generales, en las siguientes categorías. Para ayudarte a realizar un seguimiento de tu trabajo, te proporcionamos una lista de tareas que resume el contenido de estos documentos. Puedes acceder al contenido a través de la lista de tareas o analizar el contenido. Ambas rutas terminan con una extensión actualizada.

  • Actualiza el manifiesto: manifest.json debe ser específico de V3. En esta sección, se describen los cambios que puedes hacer por tu cuenta. Los cambios del manifiesto relacionados con el código se describen con los cambios de código que admiten.
  • Migra a un service worker: Un service worker reemplaza la página del evento o del fondo de la extensión para asegurarse de que el código de fondo permanezca fuera del subproceso principal, lo que puede afectar el rendimiento. Este cambio también requiere mover el DOM, la ventana y ciertas llamadas a la API de extensión a los documentos fuera de la pantalla.
  • Llamadas a la API de actualización: Algunas llamadas a la API deben reemplazarse por equivalentes más modernos.
  • Reemplaza los objetos de escucha de solicitudes web de bloqueo: El bloqueo o la modificación de las solicitudes de red en Manifest V2 podría degradar significativamente el rendimiento y requerir un acceso excesivo a los datos sensibles del usuario. La API de Declarative Net Request permite que las extensiones bloqueen o modifiquen contenido web con menos permisos y sin obstaculizar el rendimiento.
  • Mejora la seguridad de las extensiones: Manifest V3 mejora la seguridad de las extensiones de varias maneras. Además de una política de seguridad de contenido mejorada, se quitó la compatibilidad con el código alojado de forma remota y la ejecución de cadenas arbitrarias.
  • Publica tu extensión: En esta sección, se describe cómo realizar un lanzamiento paso a paso para asegurarte de que tu extensión de Manifest V3 funcione como se espera probándola primero con un público limitado.

También tenemos un Extension Manifest Converter. No hace todo por ti, pero te ayudará a comenzar. El archivo README del conversor describe lo que cambia la herramienta.

Mantener el conjunto actual de funciones

Para reducir las posibilidades de que ocurran problemas o errores inesperados, te recomendamos que no agregues funciones nuevas durante la migración. Por ejemplo, si agregas una función que requiere permisos nuevos, es posible que se active una advertencia de permisos, que inhabilitará la extensión hasta que el usuario acepte los permisos nuevos. Consulta las Prácticas recomendadas para las advertencias de permisos a fin de obtener información sobre otras formas de agregar permisos sin mostrar una advertencia.

Por lo general, Manifest V3 es compatible con Chrome 88 y versiones posteriores. Cuando actualices las llamadas a la API, es posible que las funciones de reemplazo no estén disponibles en Chrome hasta después de la versión 88. Las páginas de referencia de la API contienen información de asistencia para miembros individuales de la API. Si descubres que necesitas una de estas funciones, puedes especificar una versión mínima de Chrome en el archivo de manifiesto.

Nuevas funciones de la plataforma de extensiones

Desde el lanzamiento de Manifest V3, continuamos agregando funciones nuevas, muchas de las cuales se pueden usar tanto en Manifest V2 como en Manifest V3. No es necesario que las uses durante la conversión. Sin embargo, cuando reemplazan las funciones anteriores, debes priorizarlas en lugar de las funciones que reemplazan y esperar que las funciones reemplazadas eventualmente dejen de estar disponibles y se quiten.