【发布时间】:2015-03-27 02:36:17
【问题描述】:
我刚刚为我的 iOS 应用“升级”了我的 Facebook SDK 到 4.0。
我的登录工作正常,但是根据文档,我现在应该使用FBSDKProfile.currentProfile() 来访问个人资料信息。
然而,这个值似乎总是nil,即使我的个人资料图片正在显示(通过FBSDKProfilePictureView)并且我的FBSDKAccessToken.currentAccessToken() 不是nil。
这是我的登录名ViewController:
import UIKit
class LoginViewController: UIViewController, FBSDKLoginButtonDelegate {
@IBOutlet weak var fbLoginButton: FBSDKLoginButton!
@IBOutlet weak var fbProfilePicture: FBSDKProfilePictureView! //displays a picture
override func viewDidLoad() {
super.viewDidLoad()
self.fbLoginButton.delegate = self
FBSDKProfile.enableUpdatesOnAccessTokenChange(true)
if FBSDKAccessToken.currentAccessToken() != nil {
println("\(FBSDKAccessToken.currentAccessToken().userID)") //works
}
self.fbLoginButton.readPermissions = ["public_profile", "email", "user_friends"]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
println(FBSDKProfile.currentProfile()) //is nil
}
func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) {
}
}
有什么想法吗?
【问题讨论】:
标签: ios swift facebook-sdk-4.0