ios - 从 Facebook 登录获取真实姓名以解析用户

标签 ios facebook swift authentication parse-platform

正在开发一个使用 Facebook 登录的应用程序。目前,当用户登录时,一个对象被添加到 Parse 上的 User 类,显示 Facebook id。我怎样才能让我的应用程序获取用户的真实姓名并将其保存到此类?下面是触发 Facebook 登录的按钮的操作。向“first_name”之类的权限添加任何内容都不起作用。有任何想法吗?

let permissions = ["public_profile", "email", "user_friends"]

    PFFacebookUtils.logInWithPermissions(permissions, {
        (user: PFUser!, error: NSError!) -> Void in
        if user == nil {
            NSLog("Uh oh. The user cancelled the Facebook login.")
        } else if user.isNew {
            NSLog("User signed up and logged in through Facebook!")
        } else {
            NSLog("User logged in through Facebook!")
        }
    })
}

最佳答案

您必须使用 Facebook API 才能获取一些附加信息。

我在我的一个应用程序中使用了这段代码,该应用程序采用 Objective-C 语言。

FBRequest *request = [FBRequest requestForMe];
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
        if (!error) {
            NSDictionary *userData = (NSDictionary *)result;
            NSString *name = userData["name"];
        }
}];

我还使用 Parse,并通过此代码存储他们的 FacebookID、个人资料图片和姓名。

关于ios - 从 Facebook 登录获取真实姓名以解析用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28129478/

相关文章:

ios - mapKit 不显示注释

Facebook 邀请好友

objective-c - FacebookUtils 显示多个警告

ios - 在 Swift 中将 UIButton 覆盖在 UIWebView 上

swift - 使用滤镜将图像保存到 Swift 3.0 中的照片库

ios - iAd ADBannerView 在设备上显示有色

ios - 如何从 EXC_BAD_ACCESS 中恢复?

ios - 如何以编程方式隐藏键盘剪贴板?

ios - 覆盖绘图应用程序的 drawRect

php - 如何在 facebook webdriver 1.3.0 中添加 cookie