Tengo una instancia de reproductor de Bitmovin y trato de forzar la pantalla completa cuando la orientación del dispositivo cambia a paisaje. El código es así:
const portrait = window.matchMedia("(orientation: portrait)"); portrait.addEventListener("change", function (e) { window.dispatchEvent(new Event('resize')); if (!e.matches && player.isPlaying() && (player.getViewMode() == 'inline')) { player.setViewMode('fullscreen'); } if (e.matches && player.isPlaying() && (player.getViewMode() == 'fullscreen')) { player.setViewMode('inline'); } }) El detector de eventos funciona correctamente, pero en Chrome en teléfonos Android aparece un TypeError: fullscreen error
Si fuerzo la pantalla completa a través de la consola en las herramientas de desarrollo y restauro a la vista en línea, el comportamiento cambia y el video pasa a pantalla completa en el cambio de orientación.
Al investigar, descubrí que Chrome requiere gestos del usuario para eventos de pantalla completa o llamarlos a través de un evento (como es el caso aquí), por lo que no puedo averiguar qué está mal.
El comportamiento es el mismo usando la API de pantalla completa nativa en lugar de las funciones setViewMode() de bitmovin