2016-06-14 72 views
0

您好我正在使用Facebook登錄SDK用於我的IOS SWIFT APP。我想知道如何檢測此事件(如果用戶已被授權),並將其重定向到HomeScreen而不留在那裏。目前發生的情況是,一旦出現下面的屏幕,我按下完成按鈕或確定按鈕,仍顯示登錄屏幕。IOS SWIFT:您已經授權facebook ios

enter image description here

@IBAction func loginFacebookButton(sender: UIButton) { 



     let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager() 

     fbLoginManager .logInWithReadPermissions(["email"], fromViewController: self) { (result, error) -> Void in 

      if (error == nil){ 
       let fbloginresult : FBSDKLoginManagerLoginResult = result 
        if fbloginresult.grantedPermissions != nil { 
        dispatch_async(dispatch_get_main_queue()) { 
         self.view.addSubview(self.progressHUD) 
        } 
       if(fbloginresult.grantedPermissions.contains("email")) 
       { 



        self.getFBUserData() 
        //fbLoginManager.logOut() 
       }else{ 

       print("sorry") 

       } 
       }} 
     } 
    } 


    func getFBUserData(){ 
     if((FBSDKAccessToken.currentAccessToken()) != nil){ 
      // print("token not nill") 
      FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email"]).startWithCompletionHandler({ (connection, result, error) -> Void in 
       if (error == nil){ 
        var facebook = Facebook() 
        facebook.authenticationToken = FBSDKAccessToken.currentAccessToken().tokenString 
        facebook.email = result["email"] as? String 
        facebook.firstName = result["first_name"] as? String 
        facebook.lastName = result["last_name"] as? String 
        facebook.facebookID = result["id"] as? String 

        self.sendFBDataToServer(facebook) 

       } 
      }) 
     } 
    } 

回答

0

使用perfomSegueWithIdentifier(_:)if (error == nil)塊到任何你想要的viewController呈現。