He creado una aplicación web que utiliza la etiqueta de HTML5 y JavaScript de código que muestra el contenido de otros sincronizado con el vídeo. Funciona muy bien en los navegadores de escritorio: Firefox, Chrome y Safari. En un iPhone o un DroidX, el nativo reproductor de vídeo aparece y se apodera de la pantalla, lo que oculta la dinámica de contenido que quiero mostrar simultáneamente con el vídeo.

¿Hay alguna forma de evitar esto? Si es necesario, voy a averiguar cómo escribir aplicaciones nativas para esos dos plataformas, pero me ahorraría un montón de esfuerzo si podía seguir con HTML5/JavaScript.

  • En realidad, el navegador implementaciones de a/v de jugadores en ambos ios y android son buggy como el infierno. Pruebe con varios jugadores en la página o intentar agregar elegante controles a ellos y verás – su inservible. Así que, probablemente externo de pantalla completa de la aplicación para la reproducción de vídeo – no es tan malo 😉
  • Soy feliz cada vez que los dispositivos de apple hace que mi contenido en la forma prevista. Yo lo uso para celebrar.
  • Técnicamente no, pero hay un par de bibliotecas que hacer posible esto, como iphone-en línea-video (divulgación: lo escribí)
InformationsquelleAutor AlpineCarver | 2011-02-20

6 Comentarios

  1. 60

    En iOS 10+

    Apple habilitado el atributo playsinline en todos los navegadores de iOS 10, por lo que este funciona a la perfección:

    <video src="file.mp4" playsinline>

    En iOS 8 y iOS 9

    Respuesta corta: uso iphone-en línea-video, permite en línea de reproducción y sincroniza el audio.

    Respuesta larga: Usted puede evitar este problema mediante la simulación de la reproducción por rozando el video en vez de realmente .play()‘ing.

    • No funciona en la Cautiva Network Assistant (Portal Cautivo)
  2. 51

    Hay una propiedad que activa/desactiva en línea de los medios de reproducción en el iOS navegador web (si usted está escribiendo una aplicación nativa, sería el allowsInlineMediaPlayback propiedad de un UIWebView). Por defecto en el iPhone se establece en NO, pero en el iPad se establece en YES.

    Afortunadamente para usted, usted también puede ajustar este comportamiento en HTML de la siguiente manera:

    <video id="myVideo" width="280" height="140" webkit-playsinline>

    …que esperamos solucionarlo por ti. No sé si funcionará en los dispositivos Android. Es una webkit de la propiedad, por lo que es posible. Vale la pena ir, de todos modos.

    • Gracias por la sugerencia. Desafortunadamente, no cambiar el comportamiento estoy viendo a pantalla completa de vídeo nativo jugadores pop-up en el iPhone y en el DroidX.
    • Estoy teniendo este problema también. He añadido el webkit-playsinline e incluso el xml validado la versión de webkit-playsinline=»webkit-playsinline», pero no cambia el comportamiento
    • Esto no funciona en Safari para iPhone desde la vista de la web no permite la reproducción de vídeo en línea. Sin embargo, si la página web está alojado dentro de su propio UIWebView dentro de su propia app, usted puede establecer estas propiedades en línea y la reproducción de vídeo será posible: webview.allowsInlineMediaPlayback = SÍ; webview.mediaPlaybackRequiresUserAction = NO;
    • He leído que esto sólo funciona dentro de UIWebView en apps nativas Y en las páginas web SÓLO cuando se guarda a la pantalla de inicio como webapps.
    • Esto funciona en Cordova/PhoneGap, demasiado. Simplemente añada lo siguiente a su config.xml en Córdoba proyecto: <preference name="AllowInlineMediaPlayback" value="true" />
    • <preferencia name=»AllowInlineMediaPlayback» value=»true» /> ¡Genial!. funciona bien en mi iPhone. Muchas gracias.
    • Hay una razón por la que no funciona para Iónico?
    • Gracias @Sr. TA. Guardar mi tiempo.

  3. 40

    He aquí un desarrollador de Apple enlace que explícitamente dice que –

    en el iPhone y el iPod touch, que son pequeños dispositivos de la pantalla, «Video es NO se presenta dentro de la Página Web»

    Safari Dispositivo Consideraciones Específicas de la

    AHORA:

    • La webkit-playsinline atributo funciona para ver vídeos HTML5 en iOS pero sólo cuando se guarda la página web a la pantalla de inicio como una webapp – No se si se abre una página en Safari
    • Para una aplicación nativa con un WebView (o una aplicación híbrida con HTML, CSS, JS) el UIWebView permite reproducir el vídeo en línea, pero sólo si usted establecer el allowsInlineMediaPlayback de la propiedad para la UIWebView de la clase a la verdadera
    • Ver mis comentarios a la aceptación de la respuesta. ICYMI, de Cordova, añada lo siguiente a su config.xml: <preference name="AllowInlineMediaPlayback" value="true" />
    • Ver a mi segundo punto.
  4. 11

    De acuerdo a esta página
    https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/Attributes.html
    sólo está disponible si (Habilitado sólo en un UIWebView con el allowsInlineMediaPlayback de la propiedad se establece en SÍ.) Yo entiendo que en Mobile Safari es SÍ en el iPad y NO en el iPhone y el iPod Touch.

    • Parece que esto solo funciona si se estaban estableciendo un reproductor HTML5 página de «vivir con» un nativo de la aplicación de iOS. Sin duda, no trabajo en una llanura ol’ página web.
  5. 9

    Yo no sé acerca de android, pero Safari en el iPhone o iPod touch se juegan todos los vídeos a pantalla completa, debido al pequeño tamaño de la pantalla. En el iPad se va a reproducir el video en la página, pero permitirá que el usuario realice pantalla completa.

Dejar respuesta

Please enter your comment!
Please enter your name here