我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别

Posted

技术标签:

【中文标题】我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别【英文标题】:how do i get gender from facebook public profile Facebook IOS Swift SDK 【发布时间】:2017-11-15 09:15:02 【问题描述】:

我之所以需要获取 Facebook 用户的性别,是因为我的应用只针对女性,通过获取用户的性别可以解决很多应用问题。

代码

loginManager.logIn(readPermissions: [ .publicProfile, .email ], viewController: self)  loginResult in
            switch loginResult 
            case .failed(let error):
                print(error)
            case .cancelled:
                print("User cancelled login.")
            case .success(_, _, let accessToken):

                if let userId = accessToken.userId 

                


            
        

我从 facebook 服务器得到的结果

["picture": 
    data =     
        height = 200;
        "is_silhouette" = 1;
        url = "https://www.picture.com";
        width = 200;
    ;
, "last_name": Test, "email": test123@gmail.com, "id": 1234556, "first_name": Airsoft]

我没有得到用户的性别。如何获取用户的性别?

问候

【问题讨论】:

查看developers.facebook.com/docs/facebook-login/permissions @Rajesh 性别在 public_profile 下 我怎样才能只知道性别? 阅读developers.facebook.com/docs/graph-api/reference/user以供参考 【参考方案1】:

您可以使用 Graph api 获取这些详细信息。检查此链接https://developers.facebook.com/docs/graph-api/reference/user

      let request = FBSDKGraphRequest(graphpath: "\(user-id)", parameters: ["fields" : "id,name,email,birthday,gender,hometown" ], httpMethod: "GET")
      request?.start(completionHandler:  (connection, result, error) in
        // Handle the result
      )

【讨论】:

以上是关于我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别的主要内容,如果未能解决你的问题,请参考以下文章

Facebook iOS API:如何获取公开个人资料 URL

获取 Facebook 的用户名/ID(信使)

iOS:无法将 Facebook 个人资料公开数据作为媒体(图片和视频)

如何在 ios 中从我们的应用程序验证 Facebook 用户名和密码

在 Facebook 个人资料页面上获取用户信息

如何在iOS中为twitter和Facebook实现通用深层链接?