2017-02-13 16 views
1
@IBAction func facebookLoginbuttonPressed(_ sender: FBSDKLoginButton) { 

    let facebookLogin = FBSDKLoginManager() 

    facebookLogin.logInWithReadPermissions(["email"],  fromViewController: self) { (facebookResult:  FBSDKLoginManagerLoginResult!, facebookError: NSError!) -> Void in 
     print("Facebook login failed. Error \(facebookError)") 
    } as! FBSDKLoginManager 

} 

я получаю сообщение об ошибке, как «Не удается преобразовать значение типа„(FBSDKLoginManagerLoginResult !, NSError!) -> Пустота“ожидаемого типа аргумента«FBSDKLoginManagerRequestTokenHandler !». Пожалуйста, помогите мне решить это?Как я даю действие на мой пользовательский FBSDK кнопку для входа в ИО быстрого

+0

FUNC приложений (приложение: UIApplication, OpenUrl URL: NSURL, опции: [Строка: AnyObject]) -> Bool { возврата GIDSignIn.sharedInstance() handleURL (URL, sourceApplication:. Опции [ UIApplicationOpenURLOptionsSourceApplicationKey] as? String, аннотация: опции [UIApplicationOpenURLOptionsAnnotationKey]) } –

ответ

0
@IBAction func selectFacebookLogin(sender: UIButton) 
    { 
     let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager() 

     fbLoginManager.logInWithReadPermissions(["public_profile", "email", "user_friends"], fromViewController: self) 
     { 
      (result, error) -> Void in 
      if (error == nil) 
      { 
       let fbloginresult : FBSDKLoginManagerLoginResult = result 
       if result.isCancelled 
       { 
        return 
       } 

       if(fbloginresult.grantedPermissions.contains("email")) 
       { 
        self.getFBUserData() 
       } 
      } 
     } 
    } 

func getFBUserData() 
    { 
     showIndicator() 

     if((FBSDKAccessToken.currentAccessToken()) != nil) 
     { 
      FBSDKGraphRequest(graphPath: "me", 
           parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email , gender"]).startWithCompletionHandler(
           { (connection, result, error) -> Void in 

            self.hideIndicator() 

       if (error == nil) 
       { 
        print(result) 

       } 
      }) 
     } 
    } 
+0

Спасибо. это работает. –

+0

Добро пожаловать @VikasDhasal, вы можете также поддержать мои анны. – ChanWarde