【发布时间】:2015-11-18 11:54:06
【问题描述】:
这只是一个问题,如果我使用最新的 SDK 通过 Facebook 登录登录一次,然后我尝试再次登录,它会问我“您已经授权了应用名称”。这是正常的还是我必须改变一些东西来避免它。
在我的场景中,我在 Facebook 应用设置中启用了 SSO,这并不能解决问题!!
每当我的登录窗口显示时,我都会注销 Facebook 并清除访问令牌,首先我想是因为这个,但有人问这个问题,但我省略了代码,但它仍然在问! 有需要我可以贴代码!!!
override func viewDidLoad() {
super.viewDidLoad()
fbloginButton.delegate = self
fbloginButton.readPermissions = ["public_profile", "email", "user_friends"]
if (FBSDKAccessToken.currentAccessToken() != nil)
{
var loginM:FBSDKLoginManager = FBSDKLoginManager()
loginM.logOut()
FBSDKAccessToken.setCurrentAccessToken(nil)
}
}
@IBAction func loginFb(sender:AnyObject)
{
fbLoginManager.logInWithReadPermissions(["email"], fromViewController: self.presentingViewController, handler: { (result, error) -> Void in
if (error == nil){
var fbloginresult : FBSDKLoginManagerLoginResult = result
}
})
}
func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
NSLog("didCompleteWithResult")
if ((error) != nil)
{
}
else if result.isCancelled {
}
else {
// If you ask for multiple permissions at once, you
// should check if specific permissions missing
if result.grantedPermissions.contains("email")
{
///Here I call a function to get data
}
}
【问题讨论】:
-
是的,请发布代码和解释。
-
@moffeltje.. 我添加了代码。请检查!!!
-
@moffeltje 你找到解决方案了吗?
-
这可能会有所帮助:stackoverflow.com/a/42375054/3400991