请不要标记为重复,因为我已经尝试了所有的事情,但没有工作,有些人帮助我。
我的应用正在登录Google,登录时我收到了以前所有已登录的帐户。如何删除这些帐户?
提前谢谢。
//MARK:- clear Cache
URLCache.shared.removeAllCachedResponses()
URLCache.shared.diskCapacity = 0
URLCache.shared.memoryCapacity = 0
self.deleteCoreData()
GIDSignIn.sharedInstance().disconnect()
GIDSignIn.sharedInstance().signOut()
for cookie in HTTPCookieStorage.shared.cookies! {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
// Removes cache for all responses
URLCache.shared.removeAllCachedResponses()
抱歉,对于重复的问题,我尝试了上面的代码,但它不起作用。可以请任何人指导我在哪里错了? 再次感谢你。
答案 0 :(得分:1)
对于Swift 3.0,请清除所有网址缓存和Cookie
URLCache.shared.removeAllCachedResponses()
if let cookies = HTTPCookieStorage.shared.cookies {
for cookie in cookies {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
}
答案 1 :(得分:0)
尝试删除与auth相关的特定cookie,例如:
var cookieProperties = [HTTPCookiePropertyKey:String]()
cookieProperties[.name] = "<cookie_name>"
cookieProperties[.domain] = "<domain>"
cookieProperties[.originURL] = "<origin_url>"
// <... etc ...>
if let cookie = HTTPCookie(properties: cookieProperties) {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
或者只删除所有Cookie,如果在您的情况下不是问题:
if let cookies = HTTPCookieStorage.shared.cookies {
for cookie in cookies {
HTTPCookieStorage.shared.deleteCookie(cookie)
}
}