gol*_*ldy 3 windows-phone windows-runtime windows-8.1 windows-phone-8.1
我正在开发一个Windows Phone 8.1应用程序,它为每小时操作注册一个后台任务计时器触发器.基本上,后台任务每60分钟唤醒并执行一些操作.
我的问题是,当后台任务正在进行时,如果用户唤醒了应用程序,是否有一种方法可以向用户显示后台任务进程中发生了什么?
我知道他们是两个不同的过程.我正在为前台应用程序使用Silverlight 8.1项目,为后台任务使用托管的Windows运行时项目.我正在使用silverlight应用程序注册后台任务,但我现在正在考虑如何在这两个进程之间建立通信桥梁.
有线索吗?这甚至可能吗?
以下是有关应用程序与其后台任务之间通信的一些想法(或信息).
您可以使用IBackgroundTaskRegistration对象的Progress和Completed事件.您可以使用BackgroundTaskRegistration.AllTasks获取该对象 - 此属性返回应用程序注册的后台任务列表.每次应用程序运行时,您都必须订阅这些事件.
从后台任务中,您可以将IBackgroundTaskInstance对象的Progress属性设置为某个UInt32值,应用程序将接收该事件.也许你可以用这个数字编码你需要的东西.例如:1表示任务正在初始化,2 - 任务正在进行WorkA,依此类推......
两个进程都可以访问相同的文件,所以也许你可以使用它来做某些事情.
使用Mutex同步两个进程之间的代码执行.
这就是我现在所能想到的.我希望它有所帮助.
PS我没有真正尝试过那些事件,但看起来它们似乎很有用.