我(使用图形API)搜索FB用户并获取其名称等,但是我试图提取它们的位置,但它总是无。 我尝试了各种不同的方式来提取,但其始终为零。iOS上的FB图形API:FBGraphUser中的FBGraphPlace始终为零
我不认为它的用户没有设置他们的位置的情况下,因为如果我搜索一些随机的名称,并取回数百个结果,然后我无法获得任何他们的位置。
这里有一个如何我试图获得该位置的一个例子:
NSString* graphRequest = [NSString stringWithFormat: @"search?q=%@&type=user", person];
FBRequest *fbRequest = [FBRequest requestForGraphPath: graphRequest];
[fbRequest startWithCompletionHandler:
^(FBRequestConnection *connection, id result, NSError *theError)
{
if (theError)
{
// handle error
}
else
{
NSDictionary<FBGraphObject> *dict = (NSDictionary<FBGraphObject> *) result;
if (dict)
{
NSArray *data = [dict objectForKey:@"data"];
if (data)
{
for (FBGraphObject<FBGraphUser> *searchResult in data)
{
// here searchResult has valid data for the id and name etc.
id<FBGraphPlace> fbPlace = [searchResult location];
// but here fbPlace is nil
id<FBGraphLocation> fbLocation = [fbPlace location];
NSString *userCity = [fbLocation city];
NSString *userCountry = [fbLocation country];
NSString *name = fbPlace.name;
}
}
}
}];
我已经试过以上的变种提取位置,例如:
FBGraphObject<FBGraphPlace> *place = (FBGraphObject<FBGraphPlace>*)searchResult.location;
但是,没有不管我做什么,它总是零。