2011-10-03 98 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> 

前一段時間我有同樣的問題,它看起來就像當你添加後臺代理項目的前景的項目,它缺少更新清單文件。