我使用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/