iPhone: Разница в выступлениях между настройками nsurlrequestcachepolicy
-
20-09-2019 - |
Вопрос
Когда используешь 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]
.