pestañas mini instalar como cerrar aplicaciones abiertas ipad caching homescreen

mini - ¿Cómo se fuerza la actualización de una aplicación web marcada en la pantalla de inicio del iPad?



ios 12 (7)

Me encontré con un problema donde agregué una aplicación web a la pantalla de inicio de mi iPad (iOS 5.0.1 iPad 2) y cuando la abrí, parece que está almacenando en caché algo detrás de escena, independientemente de Safari.

Limpié todo lo relacionado con Safari que está disponible en Configuración (Borrar historial y Borrar cookies y datos), y cuando navego a la aplicación web con Safari veo la aplicación en su estado actual. Sin embargo, si abro el marcador de la pantalla de inicio, obtengo la aplicación en un estado pre-modificado.

He visto mucha información sobre el uso de un cache.manifest para almacenar en caché los recursos para su uso sin conexión, pero no estoy seguro de si esto es relevante para esto, ya que me gustaría exactamente lo contrario: no almacenar en caché nada.

He llegado al nivel de ni siquiera probar recursos externos; si cambio alguna cadena de prueba arbitraria en el elemento del cuerpo de mi index.html, el marcador de la pantalla de inicio no muestra el texto actualizado.


Cree un cache.manifest que le cache.manifest que nunca almacene en caché los recursos a los que hace referencia la página html principal:

CACHE MANIFEST # Version 1.0000 NETWORK: *

Úselo en su index.html :

<!DOCTYPE html> <html manifest="cache.manifest">

Ahora, cada vez que cambie ese archivo de manifiesto, por ejemplo, aumentando el número de versión en ese comentario, el navegador volverá a descargar index.html también.

Asegúrese de que su página se vuelva a cargar cuando se actualice la caché:

<script> function updateSite(event) { window.location.reload(); } window.applicationCache.addEventListener(''updateready'', updateSite, false); </script>

La biblioteca de desarrolladores de Safari tiene buena documentación .


Creo que encontré una solución alternativa:

La nueva versión del sitio solo aparece cuando cambia el archivo index.html.
(el primer archivo para ser cargado)

Si deja index.html y solo cambia algunos js en otros archivos, el sitio no cargará la nueva versión.


Otra solución es agregar? V = 1 a sus enlaces de Javascript y CSS. Por ejemplo:

<link rel="stylesheet" type="text/css" media="all" href="./css/ipad.css?v=1"> <script src="./js/ipad.js?v=1"></script>

Parece que uno no tiene que actualizar el número cuando su archivo ha cambiado, por lo que yo sé. Aparentemente, en un iPad 2 con la última actualización de software instalada, es suficiente con insinuar algo dinámico.


Para nuestras aplicaciones de iOS webclip estamos usando lo siguiente. Hasta el momento no hay problemas de caché:

1- Tenemos un archivo de manifiesto de caché llamado ''manifest.appcache.php''

<?php header("Cache-Control: max-age=0, no-cache, no-store, must-revalidate"); header("Pragma: no-cache"); header("Expires: Thu, 01 Jan 1970 00:00:01 GMT"); header(''Content-type: text/cache-manifest''); ?> CACHE MANIFEST CACHE: # Don''t cache anything FALLBACK: # Nothing NETWORK: # Request everything from server *

2 - En el archivo HTML tenemos:

<!DOCTYPE html> <html lang="en" manifest="manifest.appcache.php"> <head> ...


Puede forzar que la aplicación web abierta se vuelva a cargar sin utilizar la memoria caché si tiene abierto Safari Web Inspector y apuntando a su aplicación web abierta. Con Web Inspector activo, presione SHIFT + COMMAND + R (en una Mac). Es posible que deba actualizar una vez más para activar los activos actualizados.


Tengo una aplicación angular que estoy desarrollando y encontré este problema al intentar probarlo en un iPad. Al agregar una consulta sin sentido al final de la url, pude obtener una versión actual de todos los activos.

www.somesite.com?meaninglessquery


Tuve suerte al apagar el dispositivo. Cambié el manifiesto de la aplicación; pero, presumiblemente, necesita una actualización o algo para que el navegador lo busque. Como eliminé el navegador Chrome, no hay un botón de reinicio. Intentamos "cerrar" la aplicación (jaja) y borrar la aplicación; pero supongo que iOS tiende a mantener las cosas funcionando de todos modos. Apagar hizo el truco para que se actualizara.

Tal vez hay algún gesto de actualización que no sé. Tal vez uno debería meter un pequeño botón de actualización "buscar actualizaciones" en las aplicaciones web almacenadas en caché.