分别存储Facebook用户城市和州

时间:2013-11-14 18:12:15

标签: ios xcode facebook

我目前正在构建一个允许用户通过Facebook注册的社交媒体应用。我的注册过程工作正常,但我想做的一件事是请求用户城市和州,并将它们作为单独的密钥存储在我的数据库中。通过这种方式,我可以允许用户在我的应用中按城市或州搜索用户。

我已经设置了FBRequestConnection方法并整体提取用户位置。

是否可以查询城市和州并单独存储?如果有,有什么建议吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

你现在正在做的评论:

[FBRequestrequestForMe]

然后:

if ([result objectForKey:@"location"]) {
    NSString *facebookLocation = [[result objectForKey:@"location"] objectForKey:@"name"];
    [[PFUser currentUser] setObject:facebookLocation forKey:@"location"];
}

resultFBGraphUser对象,您正在访问的location属性是FBGraphPlace对象:

https://developers.facebook.com/docs/reference/ios/current/protocol/FBGraphPlace

您当前正在访问name的{​​{1}}属性,该属性为您提供该地点的NSString表示。您要做的是访问FBGraphPlace属性location。此对象具有所需各种组件的属性:

https://developers.facebook.com/docs/reference/ios/current/protocol/FBGraphLocation

(我现在不在Mac上,因此此代码中可能存在一些错误)您应该可以执行以下操作:

FBGraphLocation

然后,您可以使用此信息,但是您希望与Parse用户一起使用:

id<FBGraphUser> fbUser = (id<FBGraphUser>)result;
id<FBGraphPlace> fbPlace = [fbUser location];
id<FBGraphLocation> fbLocation = [fbPlace location];
NSString * userCity = [fbLocation city];
NSString * userCountry = [fbLocation country];
NSString * userZip = [fbLocation zip];
//etc