Когда начало работать кеширование в UIWebView?

Я тестировал контроллер представления iPhone, который использует UIWebView для загрузки внешнего содержимого, а не ресурсов в пакете проекта. Другой инженер заметил, что веб-представление вообще не кэшируется, поэтому я решил провести небольшое исследование. Некоторые старые вопросы указывали на то, что UIWebView просто не мог кэшировать внешний контент.

Предыдущие вопросы SO по кешированию UIWebView:

Эти сообщения были довольно обескураживающими, но я заметил, что все они были заданы до выхода iOS 4.0. Я протестировал следующий подход к кэшированию, который показался довольно простым.

NSURLRequest *request = [NSURLRequest requestWithURL:myUrl 
      cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:30];
[webView loadRequest:request];

Кажется, он отлично работает на iOS 4.3, но не работает совсем на iOS 3.0. Я проверил это, указав устройства на прокси Charles (на iPhone, Настройки -> WiFi, Ручной прокси) и записав трафик на мой сервер.

Начал ли UIWebView соблюдать политику кеширования в iOS 4.0? Может ли кто-нибудь еще подтвердить это, или я просто воображаю что-то?

13
задан Community 23 May 2017 в 12:09
поделиться