2009-03-31 14 views
7

He hecho una aplicación web simple para el iPhone, tiene solo 6 páginas cada una con una imagen y yo uso la transición de cubo para cambiar entre ellas, todo el contenido estático.iPhone WebApp caché

Necesito esto para trabajar con un iPod Touch sin conexión, es decir, visitarlo una vez, desconectarme de WiFi y luego poder explorar el sitio estático.

Estoy tratando de hacer esto usando la función de manifiesto HTML5, pero claramente lo estoy haciendo mal?

Mi archivo de manifiesto:

CACHE MANIFEST 
index.html 
main.css 
main.js 
Images/Appointments_Page.png 
Images/backgroundStripes.png 
Images/button.png 
Images/button1.png 
Images/button1_clicked.png 
Images/button2.png 
Images/button2_clicked.png 
Images/button3.png 
Images/button3_clicked.png 
Images/button_clicked.png 
Images/CloseIcon.png 
Images/CloseIcon_pressed.png 
Images/Efficacy_Page.png 
Images/EfficacyGraph_Page.png 
Images/Graph_Icon.png 
Images/GraphIcon.png 
Images/GraphIcon_pressed.png 
Images/Home_Page.png 
Images/Tolerability_Page.png 
Images/TolerabilityTable_Page.png 
Images/WebClipIcon.png 
Parts/ButtonHandler.js 
Parts/PushButton.js 
Parts/setup.js 
Parts/StackLayout.js 
Parts/Transitions.css 
Parts/Transitions.js 
Parts/utilities.js 

parte superior de mi archivo HTML

<!DOCTYPE HTML> 
<html manifest="cache-manifest"> 

Respuesta

10

Hey lo he descubierto, dejando respuesta aquí en caso de que ayuda a nadie más.

El problema que tenía era que nuestro servidor (IIS6) se negaba a servir mi archivo de manifiesto.

Tuve que agregar el tipo MIME ".manifest" usando "text/cache-manifest".

Desde entonces, se ha almacenado correctamente en caché, con más de 40 archivos entre 1kb y 200kb.

Espero que esto ayude.

+0

Hmm ... este código podría ser útil. Gracias por publicarlo :) – rpetrich

+0

Información oficial aquí: http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/Client-SideStorage/chapter_10_section_2.html –

+0

Sé que esto es bastante viejo, pero el [documento oficial] (http://www.w3.org/TR/html5/offline.html) es por W3, no Apple. –

3

También escribió algunos consejos sobre cómo utilizar el manifiesto en: http://wecreategames.com/blog/?p=210

Otras cosas a tener en cuenta: Es necesario volver a cargar la aplicación dos veces para obtener nuevos contenidos del manifiesto, y hay que cambiar el contenido real del manifiesto forzar la recarga de las páginas que lo contienen (esto lo hago cambiando un comentario # v.03 a # v.04, o algo similar).

3

Como nota: Apple sugiere:

"El archivo HTML que declara el archivo de manifiesto ..... se incluye automáticamente en la caché de la aplicación No es necesario añadir al archivo de manifiesto.".

(http://developer.apple.com/safari/library/documentation/iPhone/Conceptual/SafariJSDatabaseGuide/OfflineApplicationCache/OfflineApplicationCache.html#//apple_ref/doc/uid/TP40007256-CH7-SW2)

por lo que sería trabajar con el cese de "index.html" fuera de la lista manifiesto.

Tom

Cuestiones relacionadas