无法使用 facebook sdk 在 iOS 中使用 FBLoginView 登录
Unable to log in using FBLoginView in iOS using facebook sdk
函数 loginViewShowingLoggedInUser
从未被调用。即使当我按下登录按钮时,它也会进入 facebook 屏幕要求我按下确定,然后它会返回并仍然在按钮中显示 "Log in.."。每次只调用 loginViewShowingLoggedOutUser
函数。
下面是我的class:
import UIKit
class FBLoginViewController: UIViewController, FBLoginViewDelegate {
@IBOutlet weak var fbLoginView: FBLoginView!
override func viewDidLoad() {
self.fbLoginView.delegate = self
self.fbLoginView.readPermissions = ["public_profile", "email", "user_friends"]
}
func loginViewShowingLoggedInUser(loginView: FBLoginView!) {
println("in loginViewShowingLoggedInUser")
}
func loginViewShowingLoggedOutUser(loginView: FBLoginView!) {
println("in loginViewShowingLoggedOutUser")
}
func loginView(loginView: FBLoginView!, handleError error: NSError!) {
println("in loginView")
}
func loginViewFetchedUserInfo(loginView: FBLoginView!, user: FBGraphUser!) {
println("in loginViewFetchedUserInfo")
}
}
即使在 facebook 屏幕上点击确定后,它 returns 显示为 "Log in..."
从 4.X 版本开始,Facebook 将 SDK 分为 3 个部分:
The SDK is now composed of three frameworks, FBSDKCoreKit, FBSDKLoginKit, and FBSDKShareKit.
因此,如果您使用的是最新的 SDK,请使用 FBSDKLoginButtonDelegate 而不是 FBLoginViewDelegate。对于自定义登录 UI,您可以使用 FBSDKLoginManager。
有关更多信息,请参阅 documentation。
函数 loginViewShowingLoggedInUser
从未被调用。即使当我按下登录按钮时,它也会进入 facebook 屏幕要求我按下确定,然后它会返回并仍然在按钮中显示 "Log in.."。每次只调用 loginViewShowingLoggedOutUser
函数。
下面是我的class:
import UIKit
class FBLoginViewController: UIViewController, FBLoginViewDelegate {
@IBOutlet weak var fbLoginView: FBLoginView!
override func viewDidLoad() {
self.fbLoginView.delegate = self
self.fbLoginView.readPermissions = ["public_profile", "email", "user_friends"]
}
func loginViewShowingLoggedInUser(loginView: FBLoginView!) {
println("in loginViewShowingLoggedInUser")
}
func loginViewShowingLoggedOutUser(loginView: FBLoginView!) {
println("in loginViewShowingLoggedOutUser")
}
func loginView(loginView: FBLoginView!, handleError error: NSError!) {
println("in loginView")
}
func loginViewFetchedUserInfo(loginView: FBLoginView!, user: FBGraphUser!) {
println("in loginViewFetchedUserInfo")
}
}
即使在 facebook 屏幕上点击确定后,它 returns 显示为 "Log in..."
从 4.X 版本开始,Facebook 将 SDK 分为 3 个部分:
The SDK is now composed of three frameworks, FBSDKCoreKit, FBSDKLoginKit, and FBSDKShareKit.
因此,如果您使用的是最新的 SDK,请使用 FBSDKLoginButtonDelegate 而不是 FBLoginViewDelegate。对于自定义登录 UI,您可以使用 FBSDKLoginManager。
有关更多信息,请参阅 documentation。