TL; TR: Как получить адрес электронной почты и имя пользователя, зарегистрированного в моем приложении, с помощью фейсбука SDK 4.4
До сих пор мне удалось получить работу в режиме входа, теперь я могу получить токен доступа в любом месте приложения.
Как у меня установлен мой контроллер входа в систему и кнопка входа в facebook:
class LoginViewController: UIViewController, FBSDKLoginButtonDelegate {
@IBOutlet weak var loginButton: FBSDKLoginButton!
override func viewDidLoad() {
super.viewDidLoad()
if(FBSDKAccessToken.currentAccessToken() == nil)
{
print("not logged in")
}
else{
print("logged in already")
}
loginButton.readPermissions = ["public_profile","email"]
loginButton.delegate = self
}
//MARK -FB login
func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
//logged in
if(error == nil)
{
print("login complete")
print(result.grantedPermissions)
}
else{
print(error.localizedDescription)
}
}
func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) {
//logout
print("logout")
}
Теперь на моем основном представлении я могу получить токен доступа так:
let accessToken = FBSDKAccessToken.currentAccessToken()
if(accessToken != nil) //should be != nil
{
print(accessToken.tokenString)
}
Как получить имя и адрес электронной почты от пользователя, который вошел в систему, я вижу много вопросов и ответов, используя старый SDK или используя Objective-C.