Я только что "обновил" свой Facebook SDK до 4.0 для своего приложения iOS.
У меня есть журнал работает нормально, однако, согласно документации, я теперь должен использовать 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!) {
}
}
Любые идеи?