如何实现Geoposition更改事件后台任务

时间:2014-05-15 18:01:31

标签: c# windows-phone-8 windows-runtime windows-phone-8.1

目前我正在将WP8应用程序迁移到WP8.1 Universal应用程序中,在WP8应用程序中,我使用Geoposition Changed事件使用Background任务。每当用户位置发生变化时,代码都会被触发。 在Win RT应用程序和WinRT应用程序中看到后台任务实现后,我很困惑后台任务只有在特定触发器触发时才会被触发。 任何人都可以帮助我在地理位置改变背景任务时如何实现运行代码。

先谢谢。

纳伦德拉

2 个答案:

答案 0 :(得分:0)

为Windows / Phone应用程序看过这个广泛的样本吗?

http://code.msdn.microsoft.com/wpapps/Geolocation-2483de66

答案 1 :(得分:0)

你是对的,后台任务可以根据计时器触发器运行,你可以将它设置为每15分钟运行一次。

以下是后台任务的工作原理。该过程是您注册后台任务并设置定期发生的时间。在Windows手机上,除了使用后台任务API之外,当应用程序不在前台时,您无法进行任何处理。

您将在应用程序中注册的后台任务入口点应实现具有RUN功能的IBackgroundTask接口,这是每次遇到后台任务时触发的功能。那是你将获得代码的地方。基本上,您的地理位置更改事件应该在此函数中。

自动触发地理位置更改事件的每15分钟,您可以将其存储在window.storage本地设置中,或者您可以发送弹出通知等....

请注意,后台任务应该只是一个Windows运行时项目。

这是我的示例代码,可以帮助您开始。使用此代码,您需要做的就是在Tasks项目下的TimerTrigger.cs类中添加一个事件处理程序。如果你想要,你可以分叉并发送拉动请求。

https://github.com/vinayganesh/Wp8.1BackgroundTask