GeoCoordinateWatcher和超时

时间:2013-06-19 08:47:47

标签: windows-phone-7 geolocation windows-phone-8 windows-phone

我是Windows Phone 8开发的新手,我正在尝试使用 GeoCoordinateWatcher 类轻松获取用户的经纬度。

我的问题是我想管理超时(用户可以自定义其值)。

我认为“TryStart(...)”方法可以帮助我做到这一点,但是:

tryStart(false, TimeSpan.FromSeconds(10)); => The watcher starts after 10sec
tryStart(false, TimeSpan.FromSeconds(2)); => The watcher starts after 2sec

对我来说,这个方法毫无意义,因为我希望GeoCoordinateWatcher立即启动(所以我使用的是基本方法“Start()”,但我还想返回一个例外,如“超时已过期”,如果返回坐标需要超过 xxx 秒。

有一种简单的方法吗?我是否必须创建一个计时器或类似的东西?

非常感谢你的帮助

1 个答案:

答案 0 :(得分:0)

如果您使用的是Windows Phone 8,则应使用Geolocation API,它是Windows Phone Runtime的一部分 http://msdn.microsoft.com/en-us/library/windowsphone/develop/windows.devices.geolocation.geolocator.getgeopositionasync.aspx

这提供了一种简单/轻松的方式来获取位置而不会徘徊。

您可能想查看有关可能问题的详细博客文章。 http://invokeit.wordpress.com/2013/05/01/geolocator-and-movementthreshold-wpdev-win8dev/