Funciones

Las Progressive Web Apps pueden hacer más que solo procesar contenido en la pantalla o conectarse a servicios web. Las AWP pueden gestionar archivos del sistema de archivos, interactuar con el portapapeles del sistema, acceder al hardware conectado al dispositivo y mucho más. Todas las APIs web están disponibles para tu AWP y también hay algunas APIs adicionales disponibles cuando se instala tu app.

Puedes consultar Lo que la Web puede hacer hoy en día para saber qué es posible en cada plataforma. Para funciones o APIs individuales, puedes usar Can I Use o las tablas de compatibilidad del navegador en MDN.

Siempre verifica la compatibilidad de las funciones

La primera letra de la AWP significa progresiva y proviene de la idea de mejora progresiva y detección de funciones. No deberías esperar que tu app funcione de la misma manera en todos los dispositivos. La diversidad de contextos y capacidades en miles de millones de dispositivos en diferentes países hace que las AWP sean una plataforma excelente, gracias a su progresividad.

Esto significa que debes desarrollar tu app en capas que pueden no estar disponibles en todos los dispositivos y verificar la disponibilidad antes de usarla.

Debes verificar con JavaScript si existe una API antes de usarla o preguntarle a una API si hay un servicio disponible en ese dispositivo en particular.

Web potente

Hoy en día, la Web es superpoderosa. Por ejemplo:

  • Puedes compilar una app de videochat hiperlocal con WebRTC, ubicación geográfica y mensajes push.
  • Puedes hacer que una app sea instalable.
  • Puedes agregar efectos de video con WebAssembly.
  • Incluso puedes llevarlo a la realidad virtual con WebGL y WebXR.

Mejora tu AWP

Dividamos las APIs de funciones de la AWP en cuatro grupos:

  • Verde: APIs disponibles en todos los navegadores y en todas las plataformas, siempre que sea técnicamente posible La mayoría se envían desde hace muchos años, se consideran maduradas y puedes usarlas con confianza. Una API de ejemplo de este grupo es la API de ubicación geográfica.
  • Verde claro: Las APIs solo están disponibles en algunos navegadores. Teniendo en cuenta la falta de compatibilidad en algunas plataformas, estas maduraron dentro del subgrupo compatible de navegadores para que puedas usar la función con confianza en ellos. Una API de ejemplo de este grupo es WebUSB.
  • Amarillo: APIs experimentales. Estas APIs aún no están desarrolladas; solo están disponibles en algunos navegadores y dentro de las pruebas. Hablamos un poco sobre estas funciones en el capítulo Experimental.
  • Rojo: El grupo para las APIs que no puedes usar en una AWP, y los planes para agregarlas aún son a largo plazo. Una API de ejemplo de este grupo es el geovallado.

Capacidades ecológicas

A continuación, se incluye una lista de las funciones más importantes que puedes usar en tu AWP.

Conceptos básicos

Hardware y sensores

  • Controladores de juegos para leer información que proviene de controles de juegos estándar y joysticks conectados al dispositivo mediante la API de Gamepad.
  • Autenticación biométrica (como el reconocimiento de rostro o huella digital) mediante Web Authentication o WebAuthn.

Integración de sistemas operativos

Capacidades en verde claro

Esta es una lista de las funciones más importantes que puedes usar en tu AWP, con la advertencia de que podrían no estar disponibles en todos los navegadores.

Conceptos básicos

  • WebGL 2.0, la nueva versión de la especificación WebGL, que coincide con OpenGL 3.0.
  • Códecs: acceso de bajo nivel a los fotogramas individuales de una transmisión de video por Internet y fragmentos de audio; útil para aplicaciones web que requieren un control total sobre la forma en que se procesa el contenido multimedia a través de la API de Web Codecs

Hardware y sensores

  • Ambient Light lee el nivel o la iluminación actual de la luz ambiente alrededor del dispositivo, además de la API de Sensors.
  • La vibración le proporciona al usuario respuestas táctiles cuando sucede algo, si el dispositivo lo admite, mediante la API de Vibration.
  • Los medios de grabación capturan los datos que genera un objeto MediaStream o HTMLMediaElement (como una etiqueta <video>) para analizarlos, procesarlos o guardarlos en el disco, gracias a la API de MediaRecorder.
  • Aplicar un bloqueo de activación en la pantalla evita que el dispositivo se atenúe o bloquee la pantalla cuando la AWP debe seguir ejecutándose con la API de Screen Wake Lock.
  • La realidad virtual te permite usar auriculares y otros dispositivos en tu AWP, gracias a la API de WebXR Device.
  • Puedes lograr la realidad aumentada en tu AWP de muchas maneras, como con la API de WebXR Device o la app de Vista rápida de Safari para contenido de RA.
  • Detecta usuarios inactivos con la API de Idle Detection.
  • El bloqueo de orientación bloquea la orientación en modo horizontal o vertical mientras la AWP está en pantalla, gracias a la API de orientación de pantalla o a la propiedad orientation del manifiesto de apps web para las apps instaladas.
  • Presenta contenido en proyectores y pantallas secundarias, gracias a la API de Presentation.
  • Bloquea un puntero para recibir información de movimientos delta de punteros (mouse, panel táctil y punteros) en lugar de valores de posición (útil para algunos juegos) gracias a la API de Pointer Lock.

Integración de sistemas operativos

Recursos