Как к содержимому кэша в UIWebView для более быстрой загрузки позже?

Я думаю, что у Вас должно быть два действия: тот, который обрабатывает представление формы и другой, который собирает данные для представления. Как только форма была обработана, Вы звоните return RedirectToAction("Index"), и Вы сделаны. Я надеюсь, что понял то, что Вы подразумевали под этим.

23
задан Srikar Appalaraju 11 December 2012 в 05:07
поделиться

3 ответа

Ключ: NSURLRequestReturnCacheDataElseLoad

NSData *urlData;
NSString *baseURLString =  @"mysite.com";
NSString *urlString = [baseURLString stringByAppendingPathComponent:@"myfile"];

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString] cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval: 10.0]; 
NSURLConnection *connection=[[NSURLConnection alloc] initWithRequest:request delegate:nil]; 

if (connection)
{ 
    urlData = [NSURLConnection sendSynchronousRequest: request];

    NSString *htmlString = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
    [webView loadHTMLString:htmlString baseURL:baseURLString];
    [htmlString release];
}

[connection release];
23
ответ дан 29 November 2019 в 02:39
поделиться

На основании этой ветки обсуждения может показаться, что с UIWebView невозможно кэширование на уровне ОС. Основываясь на опыте, я заметил, что Safari на моем устройстве iPhone OS не кэширует свои веб-страницы (например, нажатие кнопки «Назад» в Safari не перезагружает старую страницу из кеша).

2
ответ дан 29 November 2019 в 02:39
поделиться

Я создал несколько приложений, которые кэшируют страницы в папку «Документы», а затем сравнивают временные метки кэшированных и веб-страниц перед загрузкой новой веб-страницы. Итак, основной поток таков:

if (fileIsInCache)
    if (cacheFileDate > webFileDate)
        getCachedFile
    else
        getFileFromWeb
        saveFileToCache
else
    getFileFromWeb
    saveFileToCache

stuffFileIntoUIView

maybeReduceCache

Вам все равно нужно выйти в Интернет, чтобы получить заголовки, но обычно это намного быстрее, чем загрузка всей страницы / изображения / файла.

0
ответ дан 29 November 2019 в 02:39
поделиться