【问题标题】:UWP background task location trackingUWP后台任务定位跟踪
【发布时间】:2017-10-13 09:37:37
【问题描述】:

我正在尝试开发一个能够在进程内后台任务中持续跟踪用户位置的 UWP 应用。我一直在查看 GitHub 上的 Microsoft 示例代码(geolocation / Secenario3_BackgroundTask),但问题在于它基于 TimeTrigger。 TimeTrigger 允许的最短间隔是 15 分钟,但我需要更频繁地获取位置更新。假设至少每分钟一次。这可能吗?

我已经看到有一个 LocationTrigger 但没有太多的文档。我不明白这个触发器什么时候被触发。在我的测试中,它从未被解雇。

【问题讨论】:

    标签: background uwp location


    【解决方案1】:

    LocationTrigger用于Geofencing,当移动设备进入或离开特定区域时触发。

    正如您所说,TimeTrigger 不适合您的要求,因为它至少有 15 分钟的间隔。

    Windows 10 引入了一种称为extended execution 的新机制。位置跟踪是您要求操作系统在另一个应用程序切换到前台时保持您的应用程序运行的支持方案之一。

    这是您的sample

    【讨论】:

    • 另外一件事:现在在后台运行了差不多 24 小时后,我收到了 ExtendedExecutionRevokedReason.SystemPolicy 回调。这是预期的行为吗?
    • 这是意料之中的,系统可以在任何时候撤销会话。来自文档:SystemPolicy:后台执行因系统资源而被撤销。注意系统资源,如内存使用情况和电池。 This page 有更多信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-29
    相关资源
    最近更新 更多