startMonitoringForRegion

startMonitoringForRegion

我使用IBeacon构建了一个简单的ios应用,我使用startMonitoringForRegion来检测信标。

[self.locationManager startMonitoringForRegion:beaconRegion];

没关系。我的问题是我想检查蓝牙是打开还是关闭。如果蓝牙处于关闭状态,我想定期检查用户是否在信标网络附近,并发送建议激活蓝牙的通知。为此,我使用了startMonitoringSignificantLocationChanges。

[self.locationManager startMonitoringSignificantLocationChanges];

问题在于这两个方法都调用didUpdateLocations,因此我发送了多个通知。我可以确定此方法是由startMonitoringForRegion还是startMonitoringSignificantLocationChanges调用的吗?

谢谢

最佳答案

startMonitoringSignificantLocationChanges使用locationManager:didUpdateLocations:回调

在startMonitoringForRegion时:使用locationManager:didEnterRegion:(didExitRegion)回调

参见参考:https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocationManager_Class/index.html#//apple_ref/occ/instm/CLLocationManager/startMonitoringForRegion:

关于ios - startMonitoringForRegion与startMonitoringSignificantLocationChanges,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28324244/

10-12 14:54