继续 运行 Windows Phone 8.1 中处于最小化状态的函数

Continue running a function in minimized state in Windows Phone 8.1

我有一个 CreateSchedule() 函数,它会在我打开应用程序时执行。

 private async static Task<int> CreateSchedule()
    {
        try
        {
            DateTime now = DateTime.Now;
            DateTime planTill = now.AddMinutes(15);
            do
            {
                await DoSomeWork();
                now = DateTime.Now;
                await Task.Delay(TimeSpan.FromSeconds(5));
            } while (now < planTill);

            return 1;
        }
        catch (Exception ex)
        {
            Debug.WriteLine(ex);
            return 0;
        }
    }

当应用程序处于活动状态或前台状态时,此函数 运行 持续运行(我使用了 do-while 循环)。但是当我在 WP 上最小化或按下返回或开始按钮时,此功能将不再执行。

那么有什么方法可以在应用程序最小化或按下“开始”或“返回”按钮时连续执行该功能。

我试过使用 BackgroundTask,但它似乎只在注册后 0-15 分钟内执行,这不是我的要求。

如果在 Windows Phone.

中有任何我们可以在后台 运行 的线程,请提出一些建议

提前致谢!

根据设计,您不能 运行 在后台编写代码。唯一的选择是 BackgroundTask,它有很多限制(必须在锁定屏幕上,每 15 分钟等),如您所述。

所以简短的回答是你不能。

您可以阅读有关后台任务的更多信息here