首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iphone重要位置事件与单元格更改无关

iphone重要位置事件与单元格更改无关
EN

Stack Overflow用户
提问于 2011-06-16 22:54:01
回答 3查看 2.9K关注 0票数 9

我一直在使用ios上的重要事件位置管理器,但它似乎并不像声称的那样基于单元格更改。

我使用了一个使用重要位置事件的简单应用程序,但无法从ios sdk获得可重复、一致或敏感的响应。

我在下面的地图上标出了路线(蓝线)、蜂窝塔(地标)和1000平方米的网格(蓝色方格)。地图显示路线

这条路线距离5000米。

我开了三次车。

  • test1。收到2个sig事件
  • test2。无
  • test3。收到1个sig事件

在你抱怨我的测试太小之前,我已经监视其他测试路线好几天了,所有的测试都显示出不一致的形状。

我原以为sig事件是基于手机塔交换的。因此,我使用了一个名为“信号”的越狱应用程序来识别活动细胞。(NB.it令人惊讶的是哪个细胞是活跃的。不是我所期望的那样。

从监测“信号”的应用,细胞改变了6-7倍,从我注意到。

然而,我没有收到6-7的sig事件。所以我看不出细胞转换和重大事件之间有任何关联。

所以我有以下问题

  • Q1。什么是重要的事件触发器?
  • Q2。为什么结果不可靠/不一致。
  • Q3。我如何使我的应用程序收到一致和敏感的重大事件500米?

这是在测试应用程序中运行的代码。

代码语言:javascript
运行
复制
 -(void)initLocationManager {
     if (locationManager == nil) {
         self.locationManager = [[[CLLocationManager alloc] init] autorelease];
         locationManager.delegate = self;
         locationManager.desiredAccuracy = kCLLocationAccuracyBest;
         [locationManager startUpdatingLocation];
         [locationManager stopUpdatingLocation];
         [locationManager startMonitoringSignificantLocationChanges];

     }
 }
 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [self initLocationManager];
    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];
    return YES;
}

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation
  fromLocation:(CLLocation *)oldLocation {
     NSLog(@"%@", newLocation);
     [[NSNotificationCenter defaultCenter]
 postNotificationName:@"PositionUpdate" object:nil];
 }

-lp

EN

回答 3

Stack Overflow用户

发布于 2011-06-19 09:27:31

重要的位置更改是由iOS决定的,您无法直接更改它们的粒度。请注意,只有在iOS 4中才使用单元塔位置。未来版本的操作系统将改进这一点。

但作为一种解决办法,当应用程序被唤醒/启动时,您可以打开普通的CoreLocation位置更新。然后,一旦你有了完美的结果,再禁用位置监控,让应用程序回到冬眠。

票数 4
EN

Stack Overflow用户

发布于 2011-07-11 06:39:20

我刚刚用我的应用在旧金山市中心做了一次3公里的测试,并且没有任何重大的位置变化事件。我在我的应用程序中切换到了使用kCLLocationAccuracyHundredMeters进行正常轮询,并在相同的距离内获得了40+事件。

与这里和其他地方的其他各种答案相呼应的是,我在iOS 5之前一直坚持做出重大改变。我认为,现在最好的做法是让你自己的业务逻辑来调查旧的核心定位方式,并随着时间的推移逐渐降低频率(或其他一些东西),使电池变得更友好。

在iOS 4中,与在哪个街区(甚至邮政编码)相比,重要的更改更适合于区分您所在的通勤区的哪一端。

票数 1
EN

Stack Overflow用户

发布于 2011-06-19 09:47:16

我不确定您是否已经看过了--但是WWDC 2010会话115 (在iOS中使用核心位置)可能会让您更好地了解重要的位置更改API。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6379521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档