WKWebView запускает FailedNavigation, если нет подключения к интернету

Можно ли загрузить уже посещенные страницы из кеша, если нет подключения к интернету?

Похоже, что кеш используется только при наличии подключения к интернету. Но если мы отключим интернет-соединение, то уже посещенные ссылки сразу перейдут к неудачному методу навигации.

Мы попробовали с обоими ReturnCacheDataElseLoad а также UseProtocolCachePolicy политика кэширования, как описано здесь.

Цель состоит в том, чтобы загрузить кэшированные страницы, когда нет подключения к Интернету. С UIWebView это работало, но с WKWebView он перестал работать.

1 ответ

Если вы использовали NSURLRequestUseProtocolCachePolicy, который используется по умолчанию, вам больше ничего не нужно делать. Эта политика автоматически просматривает ответ от сервера, чтобы решить, должен ли он на самом деле пойти и получить данные снова.

это будет работать, когда нет подключения к интернету. Вот что происходит с UIWebView. не уверен насчет WKWebView.

Я также нашел одну библиотеку на gitgub, которая может вам помочь: https://github.com/ernesto-elsaesser/OfflineWebView

Другие вопросы по тегам