2011-10-03 94 views
5

在我的WP7应用程序我使用的是周期性任务。Periodictask没有被执行

WHE我使用的代码进行调试启动它运行正常,即

ScheduledActionService.LaunchForTest(periodicTaskName, TimeSpan.FromSeconds(60)); 

然而,当我刚刚把它添加到行动服务也不会执行,即

ScheduledActionService.Add(periodicTask); 

周期任务代码从未执行。其相同的问题http://forums.create.msdn.com/forums/t/91617.aspx

我已经下载了几个示例应用程序及其所有的人一样。当我注释掉LaunchForTest代码,然后将任务没有运行。它在模拟器和电话中都是一样的。我检查了Phone > Settings > Background任务,我的任务是存在的,“开”。

我看到的唯一的事情就是通过模拟器

The thread '<No Name>' (0xf25003e) has exited with code 0 (0x0). 

在调试运行当我运行ScheduledActionService.LaunchForTest代码,然后我看到类似的消息时,在输出窗口下面,但我也看到程序集已被加载等 - 并执行代码。

任何想法?它非常令人沮丧。 - 谢谢!

+0

您是否在前台应用程序中测试过任务是否实际计划?得到它使用ScheduledActionService.Find并检查其属性。您还可以查看它是否可能在上次运行中崩溃。 – Christoph

+0

顺便说一句。我偶然发现你的问题,我寻找的问题是我的任务非常不规律地运行(虽然fg应用程序已关闭,但在调用之间的小时数)。发现没有解决方案,但可能你也必须等待更长时间... – Christoph

+0

@Peter,你解决了这个问题,有什么解决方案?我遇到了同样的问题。 – airbai

回答

2

确保将检查后台服务的详细信息添加到WPAppManifest.xml文件中。 下面是示例

<Tasks> 
    <DefaultTask Name="_default" NavigationPage="MainPage.xaml" /> 
    <ExtendedTask Name="BackgroundTask"> 
    <BackgroundServiceAgent Specifier="ScheduledTaskAgent" Name="Task_Name" Source="Assembly_Name" Type="Assembly_Name.ScheduledAgent" /> 
    </ExtendedTask> 
</Tasks> 

前一段时间我有同样的问题,它看起来就像当你添加后台代理项目的前景的项目,它缺少更新清单文件。