2016-03-01 2 views
2

поэтому у меня нет никаких проблем, очистить кэш WebView в для Android устройств, просто установив его CacheMode свойства Titanium.UI.Android.WEBVIEW_LOAD_NO_CACHE. Работает так, как ожидалось.Как очистить кэш Titanium WebView для IOS устройств

Тем не менее, после поиска в Интернете за пару часов и прохождения через кучи старых сообщений на форуме Titanium я не могу на всю жизнь найти эквивалентную настройку для устройств iOS. Я попытался установить кэш свойство ложных и AUTODETECT к [Ti.UI.AUTODETECT_NONE]. Я добавил случайное число в конец URL-адреса - я даже попробовал одно предложение изменить файлы ObjC SDK напрямую, но это только очищенные файлы cookie, а не кеш веб-просмотра.

Наконец, я знаю, что это может быть достигнуто путем переустановки приложения или сброса содержимого и настроек симулятора, но это просто не вариант, так как загруженные страницы могут быть изменены в любое время.

Любая помощь очень ценится.

ответ

0

Таким образом, эта ссылка является лучшим решением для iOS, хотя для этого приложения требуется , удалив Ti.Filesystem.applicationCacheDirectory для вашего конкретного приложения.

https://gist.github.com/MotiurRahman/10109159

0

Пожалуйста, посмотрите на my answer на старый вопрос, который касается той же проблемы (для Android). Насколько я знаю, с тех пор ничего не изменилось.

Возможно, это поможет вам «переработать» ваш объект webView? Это просто идея, я сам этого не пробовал, но если вы замените свой объект webView новым экземпляром webView, когда хотите очистить кеш, кеш должен быть пустым. Пожалуйста, попробуйте это, если вам действительно нужно, потому что он хакен, производит уродливый код и, возможно, вызывает проблемы с производительностью!

+0

Спасибо за ссылку, Робин. Решение, которое вы предложили, - это точная реализация, которую мы используем для Android, которая работает как шарм. Наше самое большое препятствие - возможность очистки кеша веб-представления в iOS, хотя предоставленный ответ _appears_ решил проблему. – dfeddon

Смежные вопросы