【发布时间】:2014-11-23 22:36:46
【问题描述】:
在我的应用程序中,我需要在 TimeTriggered 间隔上同步一些数据。现在我已经用 TimeTrigger 构建了一个 BackgroundTask,在这个任务中我正在运行一个 BackgroundTransfer 操作。这行得通,但我对此有一些疑问。
这是一个好的解决方案,还是有更好的解决方案?
有一些神秘的处决事情。如果我将应用程序作为调试版本部署到我的手机上,一切都像一个魅力,所有的传输操作都在 BackgroundTask 的一次执行中完成,这需要 +/- 15 分钟。现在,如果我将应用程序作为发布版本部署到我的手机,BackgroundTask 仅传输数据 1-2 分钟并停止,直到触发 TimeTrigger 的下一次执行。为什么会有差异或为什么会这样?
编辑: 资源密集型任务对我来说不是一个选项,该应用程序是基于 WinRT 商店应用程序构建的。当这是来自 backgroundTask 的限制时,我该如何从后台执行这样的操作?
edit2: @kiewic,我称它为可等待的,会改变这一点,但有什么区别,因为这是在后台任务中执行的?
【问题讨论】:
-
15 分钟下载?我认为 backgroundtask 不是为这样的工作而设计的。尝试资源密集型任务,但也有一些限制。
-
操作系统强加了网络和功率上限。
-
你能贴出你如何调用 StartAsync() 的代码吗?确保你没有在等待这个电话。
标签: c# .net windows-phone-8.1 background-task background-transfer