En julio, lanzamos una nueva serie de blogs para mantenerte al tanto de los desarrollos de extensiones. Gracias a tus valiosos comentarios y nuestra continua colaboración con otros proveedores de navegadores en el grupo de la comunidad WebExtensions, seguimos mejorando las APIs de extensiones y trabajamos para lograr una mayor coherencia entre los navegadores.
Te damos la bienvenida a la edición de octubre. En esta publicación, veremos algunos de los cambios que realizó el equipo de extensiones de Chrome en los últimos meses, así como algunas funciones nuevas que se lanzarán más adelante este año. Comencemos.
Nuevas API de extensión y funciones
En esta sección, compartimos algunos lanzamientos importantes de la API, revisamos brevemente otras mejoras de la API y compartimos los próximos lanzamientos. Actualmente, todos los lanzamientos están disponibles en la versión beta más reciente. Para obtener más información, consulta el programa de lanzamiento de Chromium.
Lo más destacado
Problemas conocidos resueltos
El equipo de extensiones ha estado trabajando activamente para resolver los problemas de estabilidad de Manifest V3. Chrome 116 lanzó muchas mejoras que nos ayudaron a avanzar significativamente para cerrar la brecha de funciones entre Manifest V2 y V3. En Chrome 120, terminamos de abordar todas las brechas de nuestra plataforma priorizada y cerramos todos los errores críticos que se documentan en la página de problemas conocidos. Todas las funciones están disponibles actualmente en Chrome 120 Canary, excepto la compatibilidad con fileHandler para ChromeOS Lacros y la API de userScripts, que llegará más adelante este mes. Consulta la página de problemas conocidos actualizada para obtener más detalles.
Se mejoró la estabilidad de los service workers
Se resolvieron los problemas de estabilidad relacionados con los service workers. En Chrome 116, agregamos funciones de conservación eficaces a las APIs de extensión que muestran una solicitud del usuario y mejoramos la compatibilidad con WebSockets (consulta el instructivo Cómo usar WebSockets en extensiones). A partir de Chrome 118, un service worker permanecerá activo durante una sesión activa de la API de Debugger.
Para obtener más detalles, consulta nuestra guía actualizada sobre service workers. Si los usuarios siguen teniendo problemas de estabilidad relacionados con service workers en las versiones de Chrome posteriores a la 119, avísanos.
Mayor seguridad
Anteriormente, si navegas a algunas URLs de chrome://
con tabs.update()
, tabs.create
y windows.create()
, se emite un error o se bloquea Chrome. Además, tabs.update()
no pudo abrir una URL de JavaScript. En Chrome 117, expandimos la cantidad de URLs de chrome://
admitidas, y el bloqueo de URLs de JavaScript ahora también se aplica a todos los métodos de API de extensiones.
En Chrome 117, los usuarios recibirán notificaciones proactivas en la página Extensiones de Chrome si una extensión que hayan instalado ya no está disponible en Chrome Web Store. Esto puede suceder si el desarrollador anula la publicación de la extensión, se la elimina por incumplimientos de política o se la identifica como software malicioso. Para obtener información más detallada, consulta Incorporación de la Verificación de seguridad en la página chrome://extensions.
En Chrome 118, las extensiones no podrán navegar a las URLs de file://
con las APIs de chrome.tabs
y chrome.windows
, a menos que esté habilitada la opción "Permitir el acceso a las URLs de archivos" en la página de detalles de la extensión. Consulta la discusión de WECG.
Más lanzamientos de API
- API del entorno de ejecución: A partir de Chrome 116, puedes usar
runtime.getContexts()
para recuperar información sobre contextos activos. Por ejemplo, puedes comprobar si hay un documento activo fuera de pantalla. - API de Side Panel En Chrome 116, puedes usar
sidepanel.open()
para abrir el panel lateral de la extensión de manera programática en respuesta a un gesto del usuario, como un clic en un menú contextual. - API de TabCapture: Se agregó la capacidad de llamar a
getMediaStreamId()
desde el service worker de extensiones y de obtener un objetoMediaStream
desde un ID de transmisión en un documento fuera de pantalla en Chrome 116. Consulta Grabación de audio y captura de pantalla para ver ejemplos. - API de DeclarativeNetRequest: Se cambió el valor predeterminado de la propiedad
isUrlFilterCaseSensitive
afalse
en Chrome 118.
Próximamente…
Planeamos abordar todos los elementos restantes en la página de problemas conocidos con el lanzamiento de Chrome 120. Además, planeamos agregar las siguientes funciones:
- La API de UserScripts permitirá que los administradores de secuencias de comandos de usuario coordinen cómo y cuándo insertar un conjunto de secuencias de comandos de usuario en las páginas web. Consulta la propuesta de WECG para obtener más detalles.
- La API de ReadingList permitirá a los desarrolladores crear, leer, actualizar y borrar metadatos que se encuentran en el panel de Lista de lectura del panel lateral. Mira el video Novedades de las extensiones de Chrome para conocer el anuncio.
- A partir de los comentarios del grupo de la comunidad de extensiones web, aumentamos significativamente el límite de los conjuntos de reglas estáticos habilitados de 10 a 50. Además, aumentamos la cantidad total de conjuntos de reglas estáticos permitidos de 50 a 100. Actualmente, esta función está disponible en Canary.
- La API de File Handling: estará disponible para las extensiones de ChromeOS a partir de ChromeOS 120, lo que permite que las extensiones abran archivos con tipos de MIME especificados y extensiones de archivo de manera similar al manejo de archivos de la plataforma web.
- Si estableces
userVisibleOnly
enfalse
, las extensiones podrán usar la API de Push web medianteself.registration.pushManager.subscribe()
sin mostrar una notificación visible para el usuario. Esto hará que las notificaciones push sean una alternativa más sencilla a WebSockets en service workers (MV3) para la comunicación asíncrona cliente-servidor. Para obtener más información, consulte el error de Chromium y la discusión de WECG.
Consulta la página Novedades de las extensiones para enterarte de los anuncios apenas estén disponibles estas funciones en Chrome Beta.
Actualizaciones de la documentación
También mejoramos y agregamos elementos a nuestra documentación. Sigue haciendo preguntas sobre chromium-group y informa problemas con la documentación.
Lo más destacado
- Renovamos la página de destino de Muestras. Ahora puedes filtrar por API, permiso y tipo, lo que facilita la ubicación de muestras específicas. Esta mejora fue un esfuerzo colaborativo con nuestro pasante de Verano de Código, Xuezhou Dai. Lee sobre su experiencia en esta entrada de blog.
- En Cómo usar tu cuenta de Google Analytics con Chrome Web Store, se describe cómo ver Google Analytics 4 para tu ficha de Chrome Web Store, como complemento de los datos proporcionados por el Panel del desarrollador. En esta guía, se indican los pasos para habilitar Google Analytics, supervisar el rendimiento de los anuncios, realizar un seguimiento de las conversiones y otorgar a otras cuentas acceso a los datos de Google Analytics.
- Publicamos una nueva guía sobre cómo funcionan las cookies y las APIs de almacenamiento web en las extensiones de Chrome. Incluye todo lo que debes saber sobre Privacy Sandbox como desarrollador de extensiones.
- Lanzamos nuevos artículos sobre cómo integrar las pruebas en tus proyectos de extensión: Pruebas de unidades de extensiones de Chrome y Pruebas de extremo a extremo para extensiones, que incluyen orientación general y prácticas recomendadas en varios frameworks populares. Para ver un instructivo práctico, consulta Cómo probar las extensiones de Chrome con Puppeteer.
Más novedades
- Reescribimos la guía de la API de Declarative Net Request para ofrecer un panorama más claro de cómo implementar conjuntos de reglas declarativos.
- Agregamos más orientación para migrar código alojado de forma remota a Manifest V3. Además, para minimizar el riesgo de encontrar problemas durante el lanzamiento, ofrecemos estrategias para publicar tu extensión de Manifest V3 por etapas.
- Obtén más información sobre cómo conectarte a un WebSocket en el service worker de tu extensión.
- Expandimos nuestra guía para obtener ayuda para incluir instrucciones más detalladas sobre cómo informar un error, hacer un seguimiento de los problemas existentes, solicitar nuevas funciones y mucho más.
Próximamente…
- Instructivo y referencia de la API de secuencias de comandos de usuario
- Instructivo y muestras de Firebase.
- Referencia de la API de ReadingList.
Rediseño de Chrome Web Store 🌈
A principios de este mes, anunciamos una vista previa anticipada de la versión renovada de Chrome Web Store, como insinuamos en Google I/O. Compruébalo tú mismo en https://chromewebstore.google.com/. Estos son algunos cambios notables:
- La lista de categorías aumentó de una lista de once a una nueva lista de diecisiete de tres grupos de categorías.
- Se mejoró la función de autocompletar en la búsqueda.
- Las capturas de pantalla ahora se muestran con una calidad significativamente más alta. Si aún no lo hiciste, puedes subir capturas de pantalla de 1280 x 800.
- Las respuestas a preguntas en la pestaña Asistencia ahora muestran líneas nuevas.
- Cuando respondas las opiniones de los usuarios y las preguntas de asistencia, tu respuesta ahora incluirá la insignia “Desarrollador” junto a tu nombre.
- Puedes proporcionar a los usuarios un vínculo directo a la página de opiniones si agregas "/opiniones" al final de la URL del elemento de la tienda, por ejemplo:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
Gracias por todos los aportes de todos los miembros hasta ahora en el grupo chromium-google. Puedes unirte al debate o enviar tus comentarios directamente al equipo de CWS con el elemento de menú Enviar comentarios:
Además, puedes enviar un formulario de autonominación para que aparezca en la colección Selecciones de los editores. Además, mantente al tanto de las mejoras que se implementarán próximamente en el panel del desarrollador.
💡 ¿Sabías que...?
- Hay un video nuevo sobre cómo depurar extensiones de Chrome. Abarca muchos temas que quizás ya conozcas, pero también comparte algunos trucos geniales para usar las Herramientas para desarrolladores en extensiones.
- Ahora debes proporcionar una política de privacidad para cada extensión. Anteriormente, solo se podía agregar una política de privacidad por cuenta de desarrollador, pero era incómodo si tenías algunas extensiones en una cuenta de desarrollador. Esta nueva interfaz está disponible en la pestaña Privacidad del elemento en el panel del desarrollador. Esto significa que ya no se admiten las políticas de privacidad a nivel de la cuenta.
Me estoy comunicando 🙌
Continuamos comunicándonos con la comunidad de desarrolladores de extensiones a través de reuniones 1:1, lanzando nuevos programas y asistiendo a cumbres. Estos son algunos aspectos destacados:
- Las extensiones del Programa de expertos de Google Developers se lanzaron en agosto. Tenemos más de una docena de nuevos GDE enfocados en las extensiones de Chrome de todo el mundo que nos brindan comentarios excelentes. Es un momento muy emocionante para el programa.
- Asistimos a la TPAC (conferencia anual del W3C) como parte del Grupo de la comunidad de extensiones web y nos reunimos con representantes de Firefox y Safari, junto con varios miembros de la comunidad. Hicimos avances significativos en varios temas, incluidos el avance hacia APIs de extensión más coherentes, el trabajo en una especificación y la compilación sobre pruebas de la plataforma web para crear un nuevo paquete de pruebas. Lee los minutos completos en el repositorio de WECG.
- La semana pasada, el equipo de extensiones participó en la Cumbre de desarrolladores sobre el filtrado de anuncios en Ámsterdam. Se conocieron en una charla de café que organizaron antes de la semana de la cumbre y el viernes al horario de atención.
Incluso si no pudiste asistir a ninguno de estos eventos, puedes seguir participando en el Grupo de Google sobre extensiones de Chromium, siguiendo los debates de los socios de navegadores sobre la WECG e informando cualquier problema de documentación.
Gracias nuevamente por ser parte de la comunidad de desarrolladores de extensiones.