脸书登录不提供个人资料图片或姓名



我已经为我的应用程序实现了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方法,我错过了什么?

提前谢谢你。

我自己找到了答案,如果其他人需要它,我会离开这里。我错过了这个: btnFacebook.delegate = self我已经将这行代码放入viewDidLoad方法中,现在我从Facebook获得个人资料图片和用户名。

相关内容

最新更新