【问题标题】:How do I get a background location update every n minutes in iOS app?如何在 iOS 应用程序中每 n 分钟获取一次后台位置更新?
【发布时间】:2011-12-02 11:41:54
【问题描述】:

我很感激这个问题似乎已经在这里得到了回答: How do I get a background location update every n minutes in my iOS application?

但是,尽管暗示了解决方案,但如果有人可以发布一些示例代码来说明其实际工作原理,我将不胜感激。

非常感谢,

杰克

【问题讨论】:

  • @wjans - 你能在这里帮助你最终使用的代码吗?非常感谢!
  • 这个问题你解决了吗?
  • 这个任务你完成了吗??请分享信息!我会很感激的

标签: iphone ios core-location


【解决方案1】:

您需要在应用程序启动期间订阅核心位置。

类似的东西

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self; 
locationManager.desiredAccuracy = kCLLocationAccuracyThreeKilometers;

并添加委托

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation

【讨论】:

  • 对不起,我应该说。我已经把这个排序的主要部分。我设置了一个按钮,当按下该按钮时,它会获取当前位置并将发布请求传递给服务器。我想要的是,当应用程序在后台时,每 30 分钟自动发生一次。
  • 即使应用在后台,也会调用核心位置委托。
  • 感谢您的帮助。这可行,但问题是我希望更新相距甚远(例如每小时一次),这会消耗大量电池寿命。有没有办法触发位置管理器,然后每隔很长时间再次停止它。
【解决方案2】:

试试这个,你会得到更新的纬度和经度..in didUpdateToLocation...

//in view did load 

locationManager = [[CLLocationManager alloc]init];
    if([CLLocationManager locationServicesEnabled])
    {
        locationManager.delegate = self;
        locationManager.desiredAccuracy  = kCLLocationAccuracyKilometer;
        locationManager.distanceFilter = 1000.0f;
        [locationManager startUpdatingLocation];
        }


- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
appDelegateObj.latitude= [[NSString alloc]initWithFormat:@"%g",newLocation.coordinate.latitude];
    appDelegateObj.longitude = [[NSString alloc]initWithFormat:@"%g",newLocation.coordinate.longitude];
  }

【讨论】:

  • 只是发表与上述相同的评论。感谢您的帮助:
  • 对不起,我应该说的。我已经整理了这个的主要部分。我设置了一个按钮,当按下该按钮时,它会获取当前位置并将发布请求传递给服务器。我想要的是,当应用程序在后台时,每 30 分钟自动发生一次。
  • 这样您就可以添加按钮并在按钮按下时调用此调用线程 30 分钟。所以每 30 分钟线程将调用它自己的操作并将此方法添加到线程操作中,因此它将每 30 分钟调用一次..
猜你喜欢
  • 1970-01-01
  • 2012-05-01
  • 2011-11-09
  • 1970-01-01
  • 2017-09-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多