【发布时间】:2013-04-20 20:22:47
【问题描述】:
我在 Geolocator 对象中设置了一个 PositionChanged 侦听器
var geolocator = new Geolocator();
geolocator.PositionChanged += Geolocator_PositionChanged;
它工作了一段时间。但是经过一段时间没有用户交互(+- 4 小时)后,它会停止接收位置变化,我认为是因为 WP8 简单地杀死了它。这可能是 ms 所希望的,但这对我的应用模型来说太可怕了。
我所做的是另外设置一个 PeriodicTask 并发送位置。这运行没有问题,但如果用户改变他的位置,我无法真正跟踪它。
问题是:有没有在不需要用户交互的情况下唤醒这个地理定位器?它可以通过 PeriodicTask 甚至在 PositionChanged 中。
我已经尝试在 PositionChanged 委托中实例化一个新的 Geolocator,但这不起作用。
非常感谢任何帮助。谢谢!
【问题讨论】:
-
如果使用 GeoCoordinateWatcher 类而不是 Geolocator 也会发生这种情况吗?
-
@anderZubi 没试过。在我看来,MS 无论如何都想弃用这个界面,不是吗?
-
这是 .Net API 的一部分,而 Geolocator 类是新 WinPRT API 的一部分。我不知道微软对前者的未来意图,但如果你不与 Windows Store 应用共享代码,你可以使用它。
-
@JoséLeal 你有解决这个问题的办法吗??
标签: c# mobile geolocation windows-phone-8