【问题标题】:Control application execution under any condition in WP8在 WP8 中控制任何条件下的应用程序执行
【发布时间】:2013-02-17 18:17:06
【问题描述】:

我正在尝试为 Windows Phone 8 构建一个基本的跟踪应用程序。但是我不知道要使用哪个模型。应用程序应以可定义的时间间隔(例如 5 秒甚至 2 小时)记录位置。

如果我将应用程序开发为前台应用程序,如果用户打开另一个程序、屏幕锁定(您可以将应用程序配置为在锁定屏幕下继续运行)或您收到电话,跟踪将停止。总体而言,应用程序未执行的风险很高。

还有一些由操作系统安排的后台任务,根据手机的当前状态,它们只允许运行几秒钟或几分钟。是否有一些解决方法来安排用户定义的后台任务执行?例如。电子邮件客户端可以设置为每 15 分钟获取一次电子邮件,因此必须有一些方法。

第三个选项是使用推送通知服务。然而,这似乎很愚蠢,因为必须涉及某些第三方 Microsoft 服务器,并且可能适用其他限制。更重要的是,应用程序必须运行才能接收通知。

这方面的最佳做法是什么?只要应用程序按要求运行,我就不关心电池消耗。对于应该更频繁地更新的图块(30 分钟或更长时间似乎非常长),必须存在类似的解决方案吗?我错过了什么吗?

一个可以调用它自己的sleep 的基本应用程序会很棒,但如果它在几秒钟后被杀死,那就不行了。还是sleep时间不算数?

【问题讨论】:

    标签: c# xaml windows-phone-8 windows-phone


    【解决方案1】:

    恐怕您无法确保您的应用执行。

    1. 标准前台应用程序总是不如来电之类的重要,因此您必须假设它可以随时暂停或停止。您也不能强制用户使用您的应用 - 这就是用户可以随时退出应用的原因。

    2. Windows Phone 上的后台执行不能永久化 - 这就是该操作系统的设计方式。邮件应用程序不是一个很好的例子,因为它是一个内置应用程序。它是作为该系统的一部分制作的,因此它有另一套规则(如果有的话)。

    3. 我真的没有看到使用推送通知的方法。但即使有,我敢肯定这不是应该如何使用该功能的。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 2011-06-24
    • 1970-01-01
    • 2015-03-03
    • 1970-01-01
    • 2019-03-27
    相关资源
    最近更新 更多