Удалить весь кеш и файлы cookie, сбросить все приложение

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

В настоящее время я могу удалить файлы cookie (и, возможно, кешировать), но проблема в том, что даже после этого удаления некоторые веб-сайты, похоже, содержат данные о предыдущих действиях.

Это код, который я использовал для очистки файлов cookie и кеша:

// Loops through each of the cookies and deletes them.
for cookie in NSHTTPCookieStorage.sharedHTTPCookieStorage().cookies! {
    NSHTTPCookieStorage.sharedHTTPCookieStorage().deleteCookie(cookie)
}
NSUserDefaults.standardUserDefaults().synchronize()

// Removes cache for all responses
NSURLCache.sharedURLCache().removeAllCachedResponses()

Кажется, это работает для большинства веб-сайтов, но даже после удаления файлов cookie и удаления всего кеша Google НЕ перестает отображать мою историю поиска. Я НЕ зарегистрирован в Google.

Буду очень признателен за любую помощь!

Пример скриншота: история поиска Google


person NerdyGeek    schedule 07.03.2016    source источник
comment
Можете ли вы проверить ответ ToddH по следующей ссылке, это поможет вам stackoverflow.com /questions/5468553/clearing-uiwebview-cache   -  person aBilal17    schedule 07.03.2016
comment
@aBilal17 aBilal17 Я уже пробовал, тоже не работает. Спасибо хоть!   -  person NerdyGeek    schedule 07.03.2016


Ответы (1)


Наконец-то я (после двухдневных попыток понять это) нашел решение этой проблемы. Мне пришлось очистить локальное хранилище с помощью JavaScript в UIWebView.

yourWebView.stringByEvaluatingJavaScriptFromString("localStorage.clear();")!

Я публикую это в надежде, что кому-то не придется тратить два дня, просто пытаясь понять это!

person NerdyGeek    schedule 07.03.2016
comment
Я пробовал webView.evaluateJavaScript(localStorage.clear();), но id не работает. Запускает исключение JS - person Marco Pappalardo; 07.10.2016
comment
красиво Но нам не нужно! в конце концов, это сработало для меня в Swift 3 - person Saeed Rahmatolahi; 23.09.2017