【发布时间】:2018-04-16 12:12:22
【问题描述】:
我需要不断轮询 API 并在 UWP 应用中提供通知,无论它是对用户可见还是最小化还是没有焦点 或 暂停。
如果我选择在应用程序本身中编写它,它会在应用程序暂停和恢复时停止工作,同时再次打开应用程序或保持焦点。 所以我选择了后台任务,这样即使应用程序暂停(例如:最小化),它也会每次都运行。
但现在任何后台任务都限制在 30 秒的短跨度内,如果使用应用程序触发器触发,则最多持续 10 分钟。
我尝试在完成 10 分钟后重新触发后台任务,但在重新触发阶段,如果应用程序被最小化或设备被锁定,则不会发生。仅在我恢复失去无限期行为的应用程序后才会发生重新触发。
我还尝试添加受限功能以无限期运行任务,但这对于商店应用程序是不允许的,并且仅适用于侧面加载。 但我的要求是支持 Store 应用程序。
请帮助我如何使用后台任务或 UWP 平台中可用的任何其他模型来实现此行为。
【问题讨论】:
-
idownvotedbecau.se/nomcve ..请添加有关您如何注册/取消注册后台任务的相关代码..另外,请通过docs.microsoft.com/en-us/windows/uwp/launch-resume/… ..
-
我正在使用进程内后台任务。您提供的 ref 超出了 proc 后台任务。但是 diff b/w 这些只是流程方面的,但后台任务本身的行为方式相同并执行相似的特征。如我错了请纠正我。如何在此处添加附件提交代码?
-
我已经删除了我的反对票,因为这似乎是一个有效的问题。要添加代码,您只需编辑您的问题并将其粘贴到那里,然后使用文本工具箱中的代码格式化程序对其进行格式化。
-
另外,您需要多久进行一次 API 调用?如果是每 10-15 分钟左右,我会建议进行进程外执行,因为商店应用程序在暂停时会有一些限制。
-
根据我们的要求,它应该是(10 秒 - 1 分钟)范围内的任何值。那么 out of proc 后台任务是否会无限期地运行应用程序触发器而不是 10 分钟限制?您能否详细说明商店应用在暂停时有哪些限制?
标签: uwp windows-10 background-task indefinite