首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在应用程序中启动后台任务

如何在应用程序中启动后台任务
EN

Stack Overflow用户
提问于 2015-08-26 14:26:36
回答 5查看 2.1K关注 0票数 14

我的平板电脑运行Windows8.1pro。

它有一个后台任务,每15‘由一个时间触发器触发。很管用,很公平。

问题是,我需要在设备的每一个启动(启动应用程序)上自动启动我的后台任务。

我通过以下代码注册了我的bg:

代码语言:javascript
运行
复制
       builder.Name = "bikePositionUpdate";
        builder.TaskEntryPoint = "BackgroundTaskGps.BikeGPSPositionUpdateBackgroundTask";
        builder.SetTrigger(new TimeTrigger(15, false)); // 

        // adding condition
        SystemCondition internetCondition = new SystemCondition(SystemConditionType.InternetAvailable);
        SystemCondition userPresentCondition = new SystemCondition(SystemConditionType.UserPresent); 

        builder.AddCondition(internetCondition);
        builder.AddCondition(userPresentCondition);
        BackgroundTaskRegistration taskRegistration = builder.Register();

我的应用程序有锁定屏幕访问

代码语言:javascript
运行
复制
         await BackgroundExecutionManager.RequestAccessAsync();

我怎样才能做到这一点?我是不是遗漏了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-09-07 09:12:27

您必须添加SystemConditionType.SessionConnected条件,此条件每次用户登录到Windows时都会发生。

在使用此触发器类型成功注册后台任务之前,应用程序必须放在锁定屏幕上。

编辑:

在这个url上,您可以找到关于您需要什么以及如何使用它的官方文档:

https://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh977056.aspx

https://msdn.microsoft.com/en-us/library/windows/apps/xaml/windows.applicationmodel.background.systemtriggertype.aspx

票数 6
EN

Stack Overflow用户

发布于 2015-09-07 11:44:46

代码语言:javascript
运行
复制
I think you should add SystemConditionType.SessionConnected condition,where this condition will check every time theuser log on to Windows
票数 2
EN

Stack Overflow用户

发布于 2015-09-03 17:15:32

您是否尝试过在注册表中添加它以在启动时运行?

我没有8.1需要检查,但是如果没有从HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run更改路径,那么路径应该是win7 (或HKEY_LOCAL_MACHINE),只需创建一个新的字符串值,并在windows启动时运行

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32229375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档