2016-01-21 47 views
1

我有一个应用程序,它在后台测距信标。当我初始化我的CLLocationManager实例时,我用startMonitoringForRegion方法开始。我正在处理locationManager:didEnterRegionlocationManager:didExitRegionlocationManager:didDetermineState:ForRegion委托方法。在这些方法中,我正在开启/关闭测距。如何确定当CLLocationManager开始监视区域时用户是否已在区域

除非在用户已经存在于区域内时初始化CLLocationManager,否则这一切似乎都很好。在这种情况下,我不会调用locationManager:didEnterRegionlocationManager:DidDetermineState:ForRegion,直到我退出并重新输入该区域。我总是觉得这至少会触发locationManager:DidDetermineState:ForRegion,但似乎并非如此。

有没有办法确定当我第一次起火startMonitoringForRegion时用户是否最初在区域内?

回答

2

您可以调用经理的requestStateForRegion方法。这会导致您的代理的didDetermineState方法异步调用。