Ho provato tutte queste soluzioni, ma nessuno di loro lavoro ogni volta. Il mio test principale era una pagina html con un'immagine impostata come sfondo nella pagina html. Questa pagina html e l'immagine sono scaricate localmente sul mio iPad attraverso un metodo di "sincronizzazione" che ho scritto. L'unico modo per mantenere la cache completamente resettata è la costante modifica dell'URL dell'immagine nella pagina html in modo che pensi che sia un'immagine unica ogni volta. Per esempio nel mio html:
<body background="image.png?v123">
Così ogni cambio pagina che faccio devo aggiornare il numero di versione:
<body background="image.png?v1234">
ecc, ecc è possibile modificare l'URL in ogni caso si desidera, semplicemente deve essere diverso
Beh, sono stanco di farlo. Ora Quando scarico il contenuto localmente, sto invece cambiando dinamicamente il nome della cartella contenente. Poiché questa cartella è una cartella principale e tutti i miei collegamenti sono relativi, significa che non devo modificare i miei file html ogni volta. Finora sembra funzionare bene. Vorrei che questi altri metodi fossero coerenti in quanto sarebbe stato molto più semplice reimpostare semplicemente la cache.
Così nelle mie richieste proprio la baseurl che sta causando la cache per resettare, non la stringa di query per la mia immagine di sfondo url o, o un file css, ecc, ecc
NSString *myURL = @"index.html";
NSURL *baseURL = [NSURL fileURLWithPath:@"FULL_PATH_TO_DOCS/MYFOLDERV123"];
[myTargetWebView loadHTMLString:myURL baseURL:baseURL];
fonte
2013-09-02 16:15:38
Non funziona per me ? i dati memorizzati nella cache vengono caricati anche se inserisco questo codice nel codice. –
È possibile modificare la politica della cache – LuisEspinoza
Grazie mille per la risposta. Questa soluzione ha funzionato per me, dove sto usando un UIWebView e non volevo caricare le pagine in cache quando non ci sono connessioni Internet. –