如何使用Parse在当前用户所在位置附近找到用户?

时间:2014-04-15 20:12:04

标签: ios objective-c geolocation parse-platform geocode

我的应用需要找到用户的当前位置,我已经完成了。然后,它需要找到当前用户所在位置附近的其他用户。我正在使用Parse。到目前为止,这是我必须得到用户的当前位置,它到目前为止工作。我不知道如何找到当前用户的位置附近的其他用户。有人可以帮帮我吗?我真的很感激。

if ([PFUser currentUser] && [PFFacebookUtils isLinkedWithUser:[PFUser currentUser]]) {
    [self updateUserInformation];

    [PFGeoPoint geoPointForCurrentLocationInBackground:^(PFGeoPoint *geoPoint, NSError *error) {
        if (!error) {
            NSLog(@"User is currently at %f, %f", geoPoint.latitude, geoPoint.longitude);
            [[PFUser currentUser]  setObject:geoPoint forKey:@"currentLocation"];
            [[PFUser currentUser] saveInBackground];
        } else {
            NSLog(@"%@", error);
            return;
        }
    }];

1 个答案:

答案 0 :(得分:3)

来自解析文档:

// User's location
PFGeoPoint *userGeoPoint = userObject[@"currentLocation"];
// Create a query for places
PFQuery *query = [PFQuery queryWithClassName:@"_User"];
// Interested in locations near user.
[query whereKey:@"location" nearGeoPoint:userGeoPoint];
// Limit what could be a lot of points.
query.limit = 10;
// Final list of objects
placesObjects = [query findObjects];

placesObjects将是一个按userGeoPoint距离(距离最远)排序的对象数组。

https://www.parse.com/docs/ios_guide#geo-query/iOS