あなたが今これをしているコメントから:
[FBRequestrequestForMe]
その後:
if ([result objectForKey:@"location"]) {
NSString *facebookLocation = [[result objectForKey:@"location"] objectForKey:@"name"];
[[PFUser currentUser] setObject:facebookLocation forKey:@"location"];
}
はオブジェクトであり、アクセスしているプロパティはresult
オブジェクトです:FBGraphUser
location
FBGraphPlace
https://developers.facebook.com/docs/reference/ios/current/protocol/FBGraphPlace
現在、場所の NSString 表現を提供name
している のプロパティにアクセスしています。FBGraphPlace
代わりにやりたいことは、であるlocation
プロパティにアクセスすることFBGraphLocation
です。このオブジェクトには、必要なさまざまなコンポーネントのプロパティがあります。
https://developers.facebook.com/docs/reference/ios/current/protocol/FBGraphLocation
(私は現在 Mac を使用していないため、このコードにはおそらくいくつかのエラーがあります) 次のようなことができるはずです。
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
この情報は、Parse ユーザーで好きなように使用できます。
[[PFUser currentUser] setObject:userCity forKey:@"city"];
[[PFUser currentUser] setObject:userZip forKey:@"zip"];