gpt4 book ai didi

ios - startMonitoringForRegion 真的有效吗?

转载 作者:可可西里 更新时间:2023-11-01 05:57:50 26 4
gpt4 key购买 nike

我一直在尝试使用 startMonitoringForRegion 一段时间,但在捕获进入/退出事件时遇到了问题。当我在模拟器上启动应用程序并移动到我指定的位置时,我得到 1 个输入事件,但输入事件再也不会触发。有人可以告诉我我做的是否正确吗?

测试.h

#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>

@interface EWViewController : UIViewController<CLLocationManagerDelegate>
{
CLLocationManager *locman;
}

@end

测试.m

- (void)viewDidLoad
{
if(locman == nil)
locman = [[CLLocationManager alloc]init];

locman.delegate = self;
CLLocationCoordinate2D coord = CLLocationCoordinate2DMake(37.787359, -122.408227);
CLRegion *region = [[CLRegion alloc]initCircularRegionWithCenter:coord radius:1000.0 identifier:@"SF"];
[locman startMonitoringForRegion:region desiredAccuracy:kCLLocationAccuracyKilometer];

[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}

- (void) locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
NSLog(@"ENTER");
}

- (void) locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
{
NSLog(@"EXIT");
}

最佳答案

我已经在我的应用程序中为地理围栏功能使用区域监控大约 6 个月了,我发现它非常精确。一旦您正确连接了所有内容,它就可以用来很好地跟踪进入和退出事件。

虽然您可以从 -didUpdateToLocation 获得更好、更精确的读数,但您必须牺牲电池生命周期才能获得它。如果您只需要偶尔更新位置,应该没问题。如果您需要对特定位置进行持续监控,则可以选择区域监控。

我发现 -startMonitoringForSignificantLocation 一点也不准确,也不是很实用。它完全依赖于蜂窝塔转换和三角测量。由于这个原因,它也不能用于在模拟器中进行测试。希望这些信息对您有所帮助。

关于ios - startMonitoringForRegion 真的有效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9053029/

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