Desarrollo de extensiones

Las extensiones de Chrome son programas de software creados con tecnologías web que personalizan la experiencia del navegador para un usuario.

Las extensiones se ejecutan en un entorno de zona de pruebas, pero pueden interactuar con el contenido web, lo que las hace adecuadas para algunos casos de uso educativo, como los siguientes:

  • Supervisión y filtrado de navegadores
  • Insertar caracteres especializados, como símbolos y ecuaciones matemáticas
  • Enriquecimiento del contenido, por ejemplo, identificación de errores ortográficos y gramaticales
  • Aplicación de políticas (p.ej., limitar el tiempo en redes sociales)

Cuando creas soluciones para casos de uso educativos en Chromebooks, puedes crear una extensión, una app web o ambas. Si necesitas ejecutar tu programa en un contexto de sitios cruzados, una extensión es una buena opción para considerar. Tu extensión puede interactuar con apps web que no son de tu propiedad. Por ejemplo, una extensión puede detectar errores gramaticales en un documento de Google y proporcionar comentarios y recomendaciones para corregirlos. Otra extensión puede ayudar a los estudiantes a tomar notas, ya que acumula en un solo documento el texto que el estudiante destaca en cualquier página web.

Si tu programa no necesita ejecutarse en otros sitios web, crear una app web podría ser una mejor opción. Si tienes una app web, una extensión complementaria puede mejorar la experiencia del usuario, ya que proporciona funciones y APIs que tal vez no estén disponibles en la plataforma web.

Migración de apps de Chrome

Si antes tenías una app de Chrome, te recomendamos que migres a las apps web. Las Apps de Chrome dejarán de estar disponibles, pero se admitirán hasta, al menos, enero de 2025 en ChromeOS. Durante este período de transición, es posible que algunas funciones de las apps de Chrome no tengan un equivalente adecuado en la plataforma web. En estos casos, es posible que debas implementar una extensión junto con tu app web para lograr resultados similares a través del pasaje de mensajes. Un ejemplo específico de esto es si deseas utilizar APIs específicas del modo de kiosco en tu aplicación de kiosco de PWA.

Desarrolla extensiones para ChromeOS

El sitio web de Chrome Developers tiene una excelente guía de inicio para comenzar a desarrollar extensiones de Chrome. También debes consultar las muestras disponibles en el repositorio oficial de GitHub de Chrome.

API

Cuando desarrolles extensiones, hay varias APIs que te ayudarán a lograr la funcionalidad que estás creando.

Además, también debes tener en cuenta algunas APIs exclusivas de ChromeOS:

  • fileBrowserHandler extiende el explorador de archivos de ChromeOS
  • fileSystemProvider crea sistemas de archivos virtuales a los que puede acceder el administrador de archivos de ChromeOS.
  • input.ime Implementa un IME personalizado para ChromeOS
  • idle.getAutoLockDelay devuelve el tiempo (en segundos) que tarda la pantalla en bloquearse automáticamente cuando está inactiva.

Publicación y hosting

Cuando termines de compilar tu extensión, querrás publicarla para que los usuarios puedan instalarla y usarla. Existen dos mecanismos de distribución compatibles oficialmente: Chrome Web Store y el alojamiento propio.

Chrome Web Store te permite poner tu extensión a disposición de los usuarios de todo el mundo. Como Chrome Web Store alojará y firmará tu extensión, también deberás cumplir con las políticas de la tienda. Una política que debes tener en cuenta es la de “propósito único”, que exige que las extensiones tengan un solo propósito en relación con su tema o función del navegador. Si no quieres que tu extensión esté disponible para el público, también tienes la opción de incluirla como privada o no listada. Esto te permite restringir el acceso a los usuarios de tu dominio o a un grupo de verificadores de confianza que puedes configurar.

Las extensiones autoalojadas son más comunes en entornos administrados, como el educativo, en los que los administradores del sistema pueden implementar políticas para controlar los dispositivos emitidos por la institución. Cuando decidas si autohospedar tu extensión o no, ten en cuenta las ventajas y desventajas de configuración y seguridad de hospedar tu extensión en tu propio servidor. Una vez que hayas empaquetado y alojado correctamente tu extensión, deberás compartir la URL del archivo de manifiesto XML de la extensión autoalojada para que los administradores puedan agregar una política que fuerce la instalación de la extensión en sus dispositivos administrados.

Extensiones administradas

A menudo, los estudiantes pueden usar tu extensión en dispositivos administrados. Es importante que comprendas las siguientes políticas de administración que los administradores pueden aplicar a los dispositivos de los estudiantes y cómo pueden afectar la funcionalidad de tu extensión: