2016-11-29 52 views
-1

我正在开发一个应用程序,通过facebook SDK登录。在带有SDK的webView中登录Facebook [Swift]

我想,当我登录web视图和加载https://www.facebook.com

,并自动登录自己的Facebook,但它不工作

还是要输入帐户和密码enter image description here

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) { 
    if error != nil 
    { 
     print(error) 
     return 
    } 
    else if (FBSDKAccessToken.current() != nil) 
    { 
     print("Successfully logged in with facebook...") 
     webView.loadRequest(URLRequest(url: URL(string:"https://www.facebook.com")!)) 
    } 
} 
+0

那么,有什么问题呢?感谢Karthick, –

回答

1

Facebook SDK本身可以处理加载www.facebook.comlogin过程的所有过程。你不需要实现UIWebView和所有。登录后,代理方法didCompleteWith result:....将会调用。你只需要检查你的登录过程的状态通过如下,

如果你已经logged in与Facebook在Safari浏览器,然后登录的帐户将被Facebook得到验证,否则,你首先需要输入你的Facebook ID和密码,然后只您将通过Facebook进行身份验证。

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) { 
    if (result!.isCancelled) {// If user cancelled the facebook login 
     // Do stuffs after Your user cancelled login process 
    } else if ((FBSDKAccessToken.current()) != nil) {// If user successfully loggedin to the Facebook 
     // Do stuffs after Your user successfully logged in. 
    } else if error != nil {// Any error occurs 
     // Error while trying to login 
    } 
} 

你可以参考我的GitHub project称为SocialLogin社会登录(推特,谷歌,LinkedIn)here

谢谢:)

+0

。但我有一个Facebook应用程序网站,我需要一个webView来加载它。或者我不明白你的意思? –

+0

难道你不想使用Facebook应用程序吗? –

+0

我描述了我的答案只适用于webView ...不使用Facebook应用程序。 –