我有一个需要使用 StartMonitoringForRegion 的应用程序。当我将以下代码放入应用程序 didFinishLaunchingWithOptions 时,它可以工作。
[loc startUpdatingLocation];
CLLocationCoordinate2D coord = CLLocationCoordinate2DMake(21.456372,39.287972);
CLRegion* region = [[CLRegion alloc] initCircularRegionWithCenter:coord radius:200 identifier:@"C"];
[self.locationManager startMonitoringForRegion:region desiredAccuracy:50];
但是当我在另一个视图中使用相同的代码时,它不起作用!我尝试使用以下代码在主线程上执行代码:
if (![NSThread isMainThread])
{
[self performSelectorOnMainThread:@selector(MonitorRegion:) withObject:pr waitUntilDone:NO];
return;
}
但它仍然不起作用!
为什么代码会在 didFinishLaunchingWithOptions 而不是其他视图中工作!
是否存在区域监视器可能无法工作的情况?