Ios8 CLLocationManager StartMonitoringVisitions在模拟器中不工作

Ios8 CLLocationManager StartMonitoringVisitions在模拟器中不工作,ios8,cllocationmanager,Ios8,Cllocationmanager,我正在将访问监视初始化为 [self.locationManager startMonitoringVisits]; 但是这个函数永远不会被调用 - (void)locationManager:(CLLocationManager *)manager didVisit:(CLVisit *)visit 如果我将初始化调用替换为 [self.locationManager startMonitoringSignificantLocationChanges]; 然

我正在将访问监视初始化为

[self.locationManager startMonitoringVisits];
但是这个函数永远不会被调用

- (void)locationManager:(CLLocationManager *)manager
               didVisit:(CLVisit *)visit
如果我将初始化调用替换为

[self.locationManager startMonitoringSignificantLocationChanges];
然后,同一个代理开始接收此调用

- (void)locationManager:(CLLocationManager *)manager
     didUpdateLocations:(NSArray *)locations
我正在使用iOS 8模拟器,并使用不同的调试选项(如高速公路驾驶、骑自行车)模拟位置,甚至在每次等待几分钟后尝试设置几个自定义位置


我已经验证了位置设置,这些设置看起来是正确的。位置管理器保存在一个强引用中。

此功能在模拟器中无法工作,因为除了“位置”监控(通过GPS、WiFi、蜂窝网络、接近传感器、蓝牙点等,其中大部分在模拟器中不存在)外,它还使用大量启发式和逻辑来确定“访问”是什么

e、 你需要“搬家”到一个新地方。然后“停留”一段时间(当然,您的位置读数一直在变化)。然后你必须“离开”——离开那个地方至少一段时间和距离,创造一个“访问”

这些事情不会发生在模拟器上,因此-没有访问那里


如果你访问Ray Wenderlich的网站,那里有一个教程,演示了CLVisit的使用,并通过另一个API+GPTX资源文件(GPS位置和时间的路由,反馈给模拟器)应用了一种很好的方法来“伪造”对模拟器的访问。

可能访问监控在模拟器上不起作用。很多东西在模拟器上不起作用。这是一个模拟器!请改为在设备上试用。您是否在StartMonitoringVisitions中获得成功:??我们如何测试它?我还没能让它在模拟器中工作,但它可以在设备上工作。然而,我注意到,在触发回调之前需要时间(几个小时或访问多个位置)。