La pantalla de la aplicación web iOS 8 se contrae después de cargar la aplicación de la camera

Estoy en el process de build una aplicación web y encontré un problema con iOS 8. Tenga en count que esto es específico para iOS 8, ya que funciona bien en versiones anteriores.

Tengo una página que carga imágenes tomadas directamente desde el teléfono o la tableta. Utilizo el siguiente enlace para llamar a la aplicación de camera:

<input type="file" accept="image/*" capture="camera" name="files[]"> 

La aplicación de la camera se abre como se esperaba y toma la foto sin problemas. Sin embargo, cuando la aplicación de la camera se cierra y vuelve a la aplicación web, la altura de la pantalla se networkinguce en más de la mitad. No hay forma de corregir las expectativas para cerrar y reiniciar la aplicación.

Puedes ver cómo se ve después de tomar la foto aquí: Screencast

Parece que la pantalla permanece en el paisaje. Sin embargo, girar el dispositivo solo lo empeora.

Estoy asumiendo que se trata de un error de iOS 8, pero me pregunto si alguien tiene alguna idea sobre cómo corregir o solucionar el problema.

Una última nota, el problema solo ocurre cuando se ejecuta como una aplicación web. Al usar safari funciona.

FYI – aquí están las meta tags que estoy usando:

  <!-- Run in full-screen mode. --> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="mobile-web-app-capable" content="yes"> <!-- Make the status bar black with white text. --> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <!-- Customize home screen title. --> <meta name="apple-mobile-web-app-title" content="DigiSite"> <!-- Disable phone number detection. --> <meta name="format-detection" content="telephone=no"> <!-- Set viewport. --> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> <!-- Startup images --> <!-- iOS 6 & 7 iPad (retina, portrait) --> <link href="http://img.digisite.us/splash.png?w=1536&h=2008&c=<br /> <b>Notice</b>: Undefined index: background in <b>/home5/digisite/public_html/mobile/mobileHeader.php</b> on line <b>22</b><br /> &n=lumentum" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image"> <!-- iOS 6 & 7 iPad (retina, landscape) --> <link href="http://img.digisite.us/splash.png?w=1496&h=2048&c=&n=lumentum" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image"> <!-- iOS 6 iPad (portrait) --> <link href="http://img.digisite.us/splash.png?w=768&h=1004&c=&n=lumentum" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 1)" rel="apple-touch-startup-image"> <!-- iOS 6 iPad (landscape) --> <link href="http://img.digisite.us/splash.png?w=748&h=1024&c=&n=lumentum" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 1)" rel="apple-touch-startup-image"> <!-- iOS 6 & 7 iPhone 5 --> <link href="http://img.digisite.us/splash.png?w=640&h=1096&c=&n=lumentum" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image"> <!-- iOS 6 & 7 iPhone (retina) --> <link href="http://img.digisite.us/splash.png?w=640&h=920&c=&n=lumentum" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image"> 

Gracias por adelantado.

    Estoy viendo el mismo problema en iPad 2 con iOS8. Parece que tiene que ver con la orientación en la que abre su aplicación. Si abrimos la aplicación en modo retrato (vertical) y luego cambiamos a paisaje (horizontal) funciona bien. Solo cuando la aplicación se abre en el paisaje, la vista se networkinguce.

    No he podido reproducir este problema en iOS7.

    Antes de la captura de fotos: iPad antes de la captura de fotos

    Después de la captura de fotos: iPad después de la captura de fotos

    Ben, estás absolutamente correcto, este es un error de iOS 8. No puedo determinar cómo progtwigrlo para solucionarlo. Si alguien más tiene alguna idea por favor no dude en compartirla. Pero hay una manera de corregir manualmente.

    El problema parece derivar en que la aplicación de la camera no identifica correctamente la position correcta. En mi iPhone, la aplicación de la camera siempre se abre en modo vertical, incluso si se mantiene en la position horizontal. Si detecta esto, simplemente siga girando el dispositivo hasta que corrija automáticamente la position. Me tomó dos bashs antes de corregirse. Una vez en el modo correcto, click "Usar foto" y todo está bien. Así que, como dijo Ben, mientras la aplicación web y la aplicación de camera estén en la misma orientación, todo está bien. Si no son su aplicación web, el puerto se perderá. Una vez que esto ocurre, su único recurso es cerrar la aplicación e intentar nuevamente. Otro nodo interesante, solo ocurre cuando se ejecuta una aplicación de pantalla completa. Si se ejecuta a través de safari como cualquier website normal, no hay problema.

    Documenté los pasos aquí para asegurarme de que lo que dije arriba esté claro. http://screencast.com/t/1mwIur5Z8 .

    Espero que esto ayude a otros. Con suerte, Apple corregirá esto.

    ¡Gracias Ben por enviar el defecto a Apple!

    Tengo exactamente el mismo problema. Abrí un bugreport en el bugtracker de Apple el 6 de agosto, pero a nadie le importa: – /
    Parece tener algo que ver con

     <meta name="apple-mobile-web-app-status-bar-style" content="black"> 

    Si no usa esta label, tiene una barra de estado superpuesta, pero tomar fotografías ya no cambia el tamaño de su vista.

    Editar:
    Ejemplo completo:

     <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta name="apple-touch-fullscreen" content="yes"> </head> <body><h1>Test</h1> <p>Capture a photo using camera</p> <input type="file" capture="camera" accept="image/*"> </body> </html> 

    Apple solucionó este error en iOS 8.3 beta 1