Я использую SFSafariViewController в Swift 2 для отображения веб-страниц на iPad Air 2 с помощью ios 9.1 (13B143). Для каждой веб-страницы требуются учетные данные от пользователя. Однако, когда пользователь нажимает кнопку выхода из системы, мне нужно очистить эти учетные данные. Я пробовал использовать следующее:Как очистить учетные данные SFSafariViewController?
let allCreds = NSURLCredentialStorage.sharedCredentialStorage().allCredentials
for (protectionSpace, userCredsDict) in allCreds {
for (_, cred) in userCredsDict {
print("DELETING CREDENTIAL")
NSURLCredentialStorage.sharedCredentialStorage().removeCredential(cred, forProtectionSpace: protectionSpace, options: ["NSURLCredentialStorageRemoveSynchronizableCredentials" : true])
}
}
// Clear cookies
if let cookies = NSHTTPCookieStorage.sharedHTTPCookieStorage().cookies {
for (cookie) in cookies {
print("DELETING COOKIE")
NSHTTPCookieStorage.sharedHTTPCookieStorage().deleteCookie(cookie)
}
}
// Clear history
print("CLEARING URL HISTORY")
NSURLCache.sharedURLCache().removeAllCachedResponses()
NSUserDefaults.standardUserDefaults().synchronize()
но он не работает. Фактически, «УДАЛЕНИЕ ПОЛНОМОЧИЙ» и «УДАЛЕНИЕ COOKIE» никогда не печатаются. Более того, я могу полностью удалить приложение iPad и переустановить его, и учетные данные все еще кэшируются, когда я вернусь к веб-адресу. Единственный способ, которым я нашел, чтобы очистить учетные данные, - это закрыть iPad и снова включить его.
Вопрос: Как я могу программно очистить учетные данные?
Благодарим за обмен. Смотрел точно то же самое. – smat88dd