gpt4 book ai didi

ios - 不时更新位置

转载 作者:行者123 更新时间:2023-11-28 18:34:02 24 4
gpt4 key购买 nike

我使用以下代码获取我的位置更新:

- (id)init {
if (self = [super init])
{
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];
}

return self;
}

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
NSLog(@"Location: %@", [locations lastObject]);
}

一切正常,问题是更新间隔为 1 秒。有什么办法可以让间隔变长?

最佳答案

您的问题是距离过滤器设置。 kCLLocationAccuracyBest 为您提供最佳数据,但您几乎会不断获得更新。现在,除非您要构建方向/路线应用程序,否则这可能不是您想要的,因为它效率不高。

像这样设置距离过滤器:

_locationManager = [[CLLocationManager alloc] init];
_locationManager.distanceFilter = kCLLocationAccuracyHundredMeters; // One of several options...

或者,如前所述,您可以使用一个显着变化的 API 来接收更新。这些更新的发生频率会降低,但您无法控制接收更新的频率。

调用此方法开始接收这些更新:

[_locationManager startMonitoringSignificantLocationChanges]

最常见的做法是在您的应用处于后台时执行此操作。

查看文档以获取更多信息:

https://developer.apple.com/library/mac/documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html

关于ios - 不时更新位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22485364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com