Badoo repeat - 如何确定和跟踪用户在IOS中的位置?

时间:2013-05-02 21:28:40

标签: python ios objective-c django cocoa-touch

我想做以下事情。

  • 使用Core Location继续更新用户的位置,并将该信息发送到数据库。

我正在创建一个类似badoo的应用程序,所以我需要随时知道用户所在的位置,以了解他们附近的人。

我做了以下事情:

我在applicationDidFinishLaunchWithOptions

中添加了以下代码
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
[locationManager startUpdatingLocation];

然后AppDelegate.m

中的以下函数
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    self.currentLocation = newLocation;

    // send location to server

    if(newLocation.horizontalAccuracy <= 100.0f) { [locationManager stopUpdatingLocation]; }
}

这是最有效的方法吗?

如何才能使用经度和纬度细节以及django来判断谁在用户附近?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

至于效率 - 取决于你的意思。您描述的方法不允许用户实际启动确定位置的过程 - 它在应用程序启动时启动。如果这是你的意图,那么我认为这对于用户没有时间来启动它是有效的。

但是,您有appdelegate文件中的代码。为了保持代码的效率,我不同意你提供的模式。更高效(在开发方面)最好有一个单独的模型处理来自位置管理器的更新,并让appdelegate创建所述模型的实例。

抱歉 - 对django无能为力。