iPhone: Разница в выступлениях между настройками nsurlrequestcachepolicy

StackOverflow https://stackoverflow.com/questions/2261206

Вопрос

Когда используешь Nsurlrequest На iPhone, каковы различия в реальном мире между различными Nsurlrequestcachepolicy настройки? Меня специально заинтересованы в влиянии политики кэша на восприятие пользователя скорости, с которой отображается страницы UIWebView.

Я использовал по умолчанию NSURLRequestCachePolicy Но я думаю, что, возможно, nsurlrequestrelaudRevalidatingCachedata может быть лучше для большинства случаев, особенно при возвращении на предыдущую страницу.

Если вы использовали различные политики кеша в реальных условиях, какая политика оказалась оптимальной в определенных обстоятельствах? Какая политика обеспечивает наилучшую общую производительность в трех различных типах соединений iPhone, Wi-Fi, 3G и Edge? Политика кэша даже оказывает какое -либо существенное влияние на восприятие пользователем скорости загрузки страницы или я должен искать в другом месте, чтобы оптимизировать время отображения UIWebView?

Обновлять:

Кажется, существует консенсус, что UIWebView, кажется, игнорирует настройки кэша на любом nsurlRequest, учитывая это. У меня нет полной уверенности в том, что это окончательный ответ, но запрещающий время для проведения некоторого обширного тестирования, я не могу получить его. Поэтому я принимаю ответ с наибольшим рейтингом. Тем не менее, я бы посоветовал вам взять ответы с целью соли, если этот вопрос имеет важное значение для вашего проекта. - Techzen.

Это было полезно?

Решение

Я не думаю, что это будет иметь какое -либо значение для вашего времени загрузки UIWebView. UIWebView построен на WebKit, и они не используют NSURLConnection внутренне (они на гораздо более низком уровне и используют CFNetwork напрямую).

Вероятно, это не то, что вы хотите услышать, но, вероятно, лучший способ ускорить время загрузки UIWebView - не использовать UIWebView. Рендеринг веб-страниц довольно процессовый интенсивный. На самом деле, Mobilesafari на самом деле в основном связан с процессором, а не сетью-обратите внимание, сколько времени требуется, например, для заполнения этого шаблона при прокрутке. Для действительно быстрой, быстро загружая контент, лучше создать собственный интерфейс в какао.

Другие советы

Я несколько часов для проекта, пытаясь получить UIWebView Для кэширования страниц я загружал. Это оказалось невозможным со стороны приложения без хранения файлов локально. Кажется, что UIWebView игнорирует NSURLRequestCachePolicy полностью.

Yahoo! имеет некоторую информацию На поведении кэширования iPhone.

Я только что сделал Grep на источниках Webkit и не нашел никакого использования -[NSURLRequest cachePolicy].

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top