尝试在我的应用程序中使用Facebook功能实现注册

时间:2015-10-20 10:15:07

标签: ios facebook swift facebook-login

我有一个自定义按钮供用户注册Facebook。但是,当我测试它是显示我已经授权应用程序,但它保留在safari页面上,并且不会返回到我的应用程序。这是我的代码到目前为止的样子。

@IBAction func facebookButtonWasHit(sender: AnyObject) {
        let permissions = [ "public_profile", "email" ]

        FBSDKLoginManager().logInWithReadPermissions(permissions, fromViewController: nil, handler: { (result, error) in
            if error != nil {
                self.presentViewController(UIAlertController(title: "Whoops!", message: error!.localizedDescription), animated: true, completion: nil)

            }
            else if result.isCancelled {
                self.presentViewController(UIAlertController(title: "Whoops!", message: "We couldn't access facebook! Did you hit cancel?"), animated: true, completion: nil)
            }
            else {

                if((FBSDKAccessToken.currentAccessToken()) == nil){
                    FBSDKGraphRequest(graphPath: "me", parameters:["fields":"email,name"]).startWithCompletionHandler({ (connection, result, error) in
                        if error != nil {
                            self.presentViewController(UIAlertController(title: "Whoops!", message: error!.localizedDescription), animated: true, completion: nil)
                        } else {
                            if let loginResult = result as? Dictionary<String,AnyObject> {
                                dispatch_async(dispatch_get_main_queue(), {
                                    if let emailID = loginResult["email"] as? String{
                                        self.emailTextField.text = emailID
                                    }
                                    self.nameTextField.text = loginResult["name"] as? String
                                    let userID = loginResult["id"] as! String
                                    let facebookProfileUrl = "http://graph.facebook.com/\(userID)/picture?type=large"
                                    let url = NSURL(string:facebookProfileUrl)
                                    self.picChanged = true
                                    self.downloadImage(url!)
                                })
                            }
                        }
                    })

                }
            }
        })
    }

0 个答案:

没有答案