我正在使用GeoLocator类作为位置感知应用程序,我希望每分钟更新一次以节省电池。我已相应地设置了ReportInverval属性,但更频繁地触发了PositionChanged事件。这有什么不对?
App.Geolocator = new Geolocator();
App.Geolocator.DesiredAccuracy = PositionAccuracy.High;
App.Geolocator.MovementThreshold = 100;
App.Geolocator.ReportInterval = 1000*60; //report change every minute
App.Geolocator.PositionChanged += geolocator_PositionChanged;
答案 0 :(得分:1)
那应该每分钟都给你一个位置,但文档确实说:
如果其他应用程序请求更频繁的更新,则通过为ReportInterval指定较小的值,您的应用程序可能会以高于请求的频率接收更新
答案 1 :(得分:0)
找出它无法正常工作的原因。解决方案是不使用MovementTreshold,因为它优先于ReportInterval。