0

我目前有一个连接到 SignalR 服务以接收通知数据的 Windows Phone 应用程序。该服务将数据推送到手机,应用程序接受、处理等,一切都按预期工作。

但是,我希望应用程序在应用程序暂停且不再在前台时继续接收通知数据,并将通知数据显示为敬酒消息。据我所知,后台任务基础设施无法做到这一点。我可以访问暂停和恢复事件(使用 Prism),所以在这里我可以注册/取消注册我的后台任务。

对于触发器,唯一接近相关的是 TimeTrigger,但这只有 15 分钟的新鲜时间,所以假设我在后台任务中重新创建连接,我最终会打开然后立即关闭每 15 分钟连接一次,这不是我想要做的。

我可以有一个“无限等待”,一直挂到超时,但这感觉不是正确的方法(而且资源使用会很糟糕)。

有没有办法解决这个问题来实现我想做的事情?

4

1 回答 1

0

不,Windows Phone 应用程序无法像这样保持通道打开。如果目标只是 toasts,那么您可以在服务器上进行计算并推送 toast 通知。

Windows 应用商店应用程序可以使用ControlChannelTrigger 类执行此操作,但 Windows Phone 不支持它。

于 2014-11-10T22:41:08.593 回答