facebook登录不提供个人资料图片或名称

时间:2016-03-02 15:09:30

标签: xcode swift facebook profile-picture

我已经为我的应用实现了facebook登录功能。

单击登录按钮(其类设置为FBSDKLoginButton)并使用用户名和密码登录后,按钮的文本将更改为注销,这很棒。 但是,我没有收到个人资料图片或用户表格facebook的名称。

以下是我的FBSDKLoginButtonDelegate方法。 我在loginButton方法中放了一个打印操作但它没有打印,所以不能输入这个方法。

func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!)
{
    print("does it enter here?")
    FBSDKGraphRequest.init(graphPath: "me", parameters: ["fields":"first_name, last_name, picture.type(large)"]).startWithCompletionHandler { (connection, result, error) -> Void in
        let strFirstName: String = (result.objectForKey("first_name") as? String)!
        let strLastName: String = (result.objectForKey("last_name") as? String)!
        let strPictureURL: String = (result.objectForKey("picture")?.objectForKey("data")?.objectForKey("url") as? String)!
        self.lblName.text = "Welcome, \(strFirstName) \(strLastName)"
        self.ivUserProfileImage.image = UIImage(data: NSData(contentsOfURL: NSURL(string: strPictureURL)!)!)
    }
}

func loginButtonDidLogOut(loginButton: FBSDKLoginButton!)
{
    let loginManager: FBSDKLoginManager = FBSDKLoginManager()
    loginManager.logOut()
    ivUserProfileImage.image = nil
    lblName.text = ""
}
你能帮帮我吗?我错过了什么,当我用facebook登录时,我没有输入loginButton方法?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

我自己找到了答案,我会离开这里,万一其他人需要它。我错过了这个:      btnFacebook.delegate = self 我把这行代码放到了viewDidLoad方法中,现在我从facebook上获取了个人资料图片和用户名。