多用户iOS SDK

多用户iOS SDK,ios,swift,facebook,Ios,Swift,Facebook,我正在开发一个iOS应用程序,可供多个用户使用。例如,它将安装在一个信息亭,因此多人将与之交互,然后能够登录到Facebook并共享内容 我可以在应用程序中使用Facebook凭据登录/注销;但是,当我下次登录时。。。嵌入式弹出式safari浏览器会记住以前登录的用户并显示“您已经授权”。什么是清除用户的正确方法,这样safari浏览器就不会记住最后一个用户?我到处都搜索过,人们建议用var-httpCookie:nshttppcookiestorage=nshttpcookestorage.s

我正在开发一个iOS应用程序,可供多个用户使用。例如,它将安装在一个信息亭,因此多人将与之交互,然后能够登录到Facebook并共享内容


我可以在应用程序中使用Facebook凭据登录/注销;但是,当我下次登录时。。。嵌入式弹出式safari浏览器会记住以前登录的用户并显示“您已经授权”。什么是清除用户的正确方法,这样safari浏览器就不会记住最后一个用户?我到处都搜索过,人们建议用var-httpCookie:nshttppcookiestorage=nshttpcookestorage.sharedhttpcookestorage()清除cookie。。。但这将返回0项。任何帮助或指导都将不胜感激

这应该可以做到:

let storage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
    for cookie in storage.cookies! {
        storage.deleteCookie(cookie)
}

这应该可以做到:

let storage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
    for cookie in storage.cookies! {
        storage.deleteCookie(cookie)
}

您如何要求用户登录?应用程序会打开Safari登录吗?或者登录是在应用程序中处理的?在新的Facebook iOS SDK中,它默认为Safari视图控制器。所以,当你点击登录按钮。。。这是Safari的精简版,但共享所有cookies。。。所以,如果用户已经登录,则系统会立即提示您授予对应用程序的访问权限。如果没有,则您登录,然后系统会提示您授予对该应用程序的访问权限。所以,它真的打开了Safari,它会记住你的登录凭据,我不知道如何从我的应用程序中清除这些。你是如何要求用户登录的?应用程序会打开Safari登录吗?或者登录是在应用程序中处理的?在新的Facebook iOS SDK中,它默认为Safari视图控制器。所以,当你点击登录按钮。。。这是Safari的精简版,但共享所有cookies。。。所以,如果用户已经登录,则系统会立即提示您授予对应用程序的访问权限。如果没有,则您登录,然后系统会提示您授予对该应用程序的访问权限。所以,它真的打开了Safari,它会记住你的登录凭据,我不知道如何从我的应用程序中清除它。这将返回0个项目。在视图中创建Facebook登录按钮之前,我将此代码放在viewDidLoad中。您是否尝试使用:FBSDKLoginManager().logOut()是,我还尝试将访问令牌和当前配置文件设置为零。这是我的注销方法,当我单击注销时调用它<代码>func loginButtonDidLogOut(loginButton:FBSDKLoginButton!){print(“用户注销”)FBSDKAccessToken.setCurrentAccessToken(nil)FBSDKProfile.setCurrentProfile(nil)FBSDKLoginManager().logOut()让存储=nshtpcookieStorage.sharedhtpcookieStorage()对于storage.cookies!{storage.deleteCookie(cookie)}}重置值后,是否可以尝试打印这些值?所以在FBSDKAccessToken.setCurrentAccessToken(nil)之后,对currentAccessToken进行打印,看看它是否真的为零。好的。。。这里是注销功能现在<代码>如果(FBSDKAccessToken.currentAccessToken()==nil){print(“访问令牌为nil”)}否则{print(“访问令牌为非nil”)}控制台输出。。。访问令牌为零。此操作返回0个项。在视图中创建Facebook登录按钮之前,我将此代码放在viewDidLoad中。您是否尝试使用:FBSDKLoginManager().logOut()是,我还尝试将访问令牌和当前配置文件设置为零。这是我的注销方法,当我单击注销时调用它<代码>func loginButtonDidLogOut(loginButton:FBSDKLoginButton!){print(“用户注销”)FBSDKAccessToken.setCurrentAccessToken(nil)FBSDKProfile.setCurrentProfile(nil)FBSDKLoginManager().logOut()让存储=nshtpcookieStorage.sharedhtpcookieStorage()对于storage.cookies!{storage.deleteCookie(cookie)}}重置值后,是否可以尝试打印这些值?所以在FBSDKAccessToken.setCurrentAccessToken(nil)之后,对currentAccessToken进行打印,看看它是否真的为零。好的。。。这里是注销功能现在<代码>如果(FBSDKAccessToken.currentAccessToken()==nil){print(“访问令牌为nil”)}否则{print(“访问令牌为非nil”)}控制台输出。。。访问令牌为零