【问题标题】:WinRT background task debug / VS 2015 debugger exits silentlyWinRT后台任务调试/VS 2015调试器静默退出
【发布时间】:2015-12-30 11:41:34
【问题描述】:

我正在开发 WinRT Windows Phone 8.1 应用程序,并且正在尝试实现后台任务。经过大量研究,我能够生成一个应该可以工作的代码,但是当我尝试运行它时,调试器退出,没有错误,只是退出......我尝试使用 Lifecycle Events 菜单并设置时区触发器,在这两种情况下,我得到相同的结果。

详情: 我使用 Windows 运行时组件 (Windows Phone) 模板创建了一个新项目,然后将该文件编辑为一个简单的 BackgroundTask:

namespace RSSReader.Tasks
{
    public sealed class GetFeed
    {
        public async void Run(IBackgroundTaskInstance taskInstance)
        {
            // Will do stuff...
        }
    }
}

在 Package.appxmanifest 上注册,在声明选项卡上,创建后台任务声明,勾选系统事件,并将入口点设置为 RSSReader.Tasks.GetFeed

然后,在 MainPage 我添加了以下内容:

    private async void registerTask()
    {
        string taskName = "FeedChecker";

        var bgAccStatus = await BackgroundExecutionManager.RequestAccessAsync();

        if (bgAccStatus == BackgroundAccessStatus.AllowedMayUseActiveRealTimeConnectivity ||
            bgAccStatus == BackgroundAccessStatus.AllowedWithAlwaysOnRealTimeConnectivity)
        {

            foreach (var task in BackgroundTaskRegistration.AllTasks)
            {
                if (task.Value.Name == taskName)
                {
                    return;
                }
            }

            var builder = new BackgroundTaskBuilder();
            var trigger = new SystemTrigger(SystemTriggerType.TimeZoneChange, false);

            builder.Name = taskName;
            builder.TaskEntryPoint = typeof(Tasks.GetFeed).FullName;
            builder.SetTrigger(trigger);

            var registration = builder.Register();
        }
    }

它注册了任务,但是当我更改时区时,我的应用程序消失了,调试器退出了......

【问题讨论】:

    标签: c# visual-studio windows-runtime windows-phone-8.1


    【解决方案1】:

    问题是方法返回。当您创建一个返回 void 的异步方法时,它只是一劳永逸,并且方法执行没有任何状态。对于需要检查执行状态的异步方法,您需要将返回从void更改为Task,并且在触发任务后应用程序应该继续执行。

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-04
      • 1970-01-01
      • 1970-01-01
      • 2016-06-16
      • 1970-01-01
      • 1970-01-01
      • 2019-12-31
      相关资源
      最近更新 更多