He estado probando un controlador de vista de iPhone que usa un UIWebView para cargar contenido externo, a diferencia de los recursos en el paquete del proyecto. Otro ingeniero se dio cuenta de que la vista web no estaba en la memoria caché, así que investigué. Algunas preguntas anteriores indicaban que UIWebView simplemente no podía almacenar en caché el contenido externo.¿Cuándo comenzó a funcionar el almacenamiento en caché en un UIWebView?
anterior SO Preguntas sobre UIWebView almacenamiento en caché:
- Is it possible to cache resources loaded in an iPhone UIWebView?
- Is it possible to cache web pages with a UIWebView?
- Reading HTML content from a UIWebView
esos puestos eran bastante desinflado, pero me di cuenta que todos ellos fueron hechas antes de iOS 4.0 salió. Probé el siguiente enfoque para el almacenamiento en caché, que parecía bastante directo.
NSURLRequest *request = [NSURLRequest requestWithURL:myUrl
cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:30];
[webView loadRequest:request];
Esto parece funcionar muy bien en iOS 4.3 pero no funciona en absoluto en iOS 3.0. Probé esto apuntando los dispositivos a un Charles proxy (en iPhone, Configuración -> WiFi, proxy manual) y registrando el tráfico a mi servidor.
¿UIWebView comenzó a observar la política de caché en iOS 4.0? ¿Alguien más puede confirmar esto o solo estoy imaginando cosas?
He probado en iOS 4.0 con ninguna política de caché, simplemente '[NSURLRequest requestWithURL: myURL] 'y parecía cargar desde la memoria caché – goldierox
Creo que este enlace le ayudará a ... http: // stackoverflow .com/questions/2352841/does-disk-caching-with-nsurlrequest-and-nsurlconnection-actually-work-on-the-iph? rq = 1 – junaidsidhu