У меня есть приложение для Windows Phone markeplace. Пользователи сообщают, что приложение иногда дает сбой на Windows Phone 8. Вот мои данные из отчета центра разработки для Windows Phone:
Функция проблемы:
Microsoft.Phone.Scheduler.SystemNotificationInterop.CheckHr
Тип исключения
system.reflection.targetinvocationexception
Трассировки стека:
Frame Image Function Offset
0 microsoft_phone_ni Microsoft.Phone.Scheduler.SystemNotificationInterop.CheckHr 0x0000019a
1 microsoft_phone_ni Microsoft.Phone.Scheduler.SystemNotificationInterop.CreateNotification 0x0000002e
2 microsoft_phone_ni Microsoft.Phone.Scheduler.ScheduledActionService.Add 0x00000056
3 myapp_ni Myapp.MainPage..ctor 0x000000b0
Проблема может быть с фоновым агентом. Я использовал это руководство.
Мой код:
public MainPage()
{
InitializeComponent();
/* Periodic agents*/
// A unique name for your task. It is used to
// locate it in from the service.
var taskName = "MyTask";
// If the task exists
var oldTask = ScheduledActionService.Find(taskName) as PeriodicTask;
if (oldTask != null)
{
ScheduledActionService.Remove(taskName);
}
// Create the Task
PeriodicTask task = new PeriodicTask(taskName);
// Description is required
task.Description = "This saves some data to Isolated Storage";
// Add it to the service to execute
ScheduledActionService.Add(task);
/* Testing my agent*/
// ScheduledActionService.LaunchForTest(taskName, TimeSpan.FromMilliseconds(1500));
/* Testing my agent*/
/* Periodic agents */
...
Я прочитал ScheduledActionService.Find выдает исключение ArgumentException, но не понял, что за этим стоит.