Objective c iOS 5区域监控:能否根据coreLocation的用户当前坐标创建新区域?

Objective c iOS 5区域监控:能否根据coreLocation的用户当前坐标创建新区域?,objective-c,ios4,ios5,geolocation,core-location,Objective C,Ios4,Ios5,Geolocation,Core Location,我的问题是关于在iOS 5中创建用于区域监控的区域。是否可以根据应用程序当前位置的用户创建新区域?或者开发人员需要在应用程序二进制文件中预定义所有区域吗 我知道你可以根据用户的当前位置注册某些区域,因为操作系统限制手机/应用程序一次可以监控的区域数量,你应该只注册用户当前位置附近的区域。。。但是,是否可以根据用户位置动态创建区域(以前未定义) 用例示例: 用户应用程序启动coreLocation以获得准确的坐标集,一旦我们获得准确的坐标,coreLocation将关闭以节省电池。当用户离开该区域

我的问题是关于在iOS 5中创建用于区域监控的区域。是否可以根据应用程序当前位置的用户创建新区域?或者开发人员需要在应用程序二进制文件中预定义所有区域吗

我知道你可以根据用户的当前位置注册某些区域,因为操作系统限制手机/应用程序一次可以监控的区域数量,你应该只注册用户当前位置附近的区域。。。但是,是否可以根据用户位置动态创建区域(以前未定义)

用例示例:

用户应用程序启动coreLocation以获得准确的坐标集,一旦我们获得准确的坐标,coreLocation将关闭以节省电池。当用户离开该区域时,需要发生一个事件,因此我们想知道用户何时移动x个距离单位。是否可以在用户当前位置周围创建x个距离单位的区域,以便我们可以开始监视did退出区域

我做了大量的研究,但找不到答案。。。不幸的是,我对区域监控不是很熟悉


谢谢:)

理论上,您可以随时监视任何区域,这些区域不需要预定义,您可以使用以下代码创建并实际监视所需的区域

CLLocationCoordinate2D center = CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude);
CLRegion *region = [[CLRegion alloc] initCircularRegionWithCenter:center radius:50.0f identifier:identifier];
[self.locationManager startMonitoringForRegion:region desiredAccuracy:kCLLocationAccuracyBest];

PS:区域监控的实现没有苹果宣传的那么有用,据我所知,它依赖于电池更换事件(同样是为了节省电池)。我甚至对iPhone4和4s上的默认提醒应用程序(基于位置的提醒)的结果都不满意。

我在iOS7上也做了同样的事情。但是,现在我遇到了一个新问题。我认为我们能监控的区域最多是15个。现在我的问题是,如果我想监视用户当前位置的区域,并且一个接一个的数量达到15,那么我如何处理这种情况。或者我不必担心区域的数量,因为我总是根据用户当前位置监控区域,这是一个。如果您有任何解决方案,请与我分享。提前谢谢。祝您愉快。如果您查看文档,最大限额为20。确保半径小于最大区域监视距离。现在我的理解是,如果你超过这个数字,iOS将发布对最古老地区的监控:是的,我当然发布了。但那不是我的问题。如果你能看看我的这个问题,谢谢