В моих приложениях с Windows Phone 8 у меня есть задачи (LiveTiles и ToastNotifications). Я хочу, чтобы эти задачи выполнялись как периодические фоновые задачи. Задача уведомления о Toast запускается один раз в день, и моя задача LiveTiles запускается каждые 10 минут. Добавляя вторую периодическую задачу, она показывает ошибку (ошибка BNS: максимальное количество ScheduledActions этого типа уже добавлено). Любой, кто дал мне знать ответ, если у вас есть решение. Здесь я прикрепил код.Как выполнять две фоновые задачи периодически в приложениях wp8?
App.xaml.cs:
var LiveTilesName = "LiveTiles";
var ToastNotificationsName = "ToastNotifications";
PeriodicTask LiveTilesPeriodicTask = ScheduledActionService.Find(LiveTilesName) as PeriodicTask;
PeriodicTask ToastNotificationPeriodicTask = ScheduledActionService.Find(ToastNotificationsName) as PeriodicTask;
if (LiveTilesPeriodicTask != null)
ScheduledActionService.Remove(LiveTilesName);
if (ToastNotificationPeriodicTask != null)
ScheduledActionService.Remove(ToastNotificationsName);
LiveTilesPeriodicTask = new PeriodicTask(LiveTilesName) { Description = "Update Live Tiles." };
ToastNotificationPeriodicTask = new PeriodicTask(ToastNotificationsName) { Description = "Toast Notifications" };
try
{
ScheduledActionService.Add(LiveTilesPeriodicTask);
ScheduledActionService.LaunchForTest(LiveTilesName, TimeSpan.FromSeconds(10));
ScheduledActionService.Add(ToastNotificationPeriodicTask);
ScheduledActionService.LaunchForTest(ToastNotificationsName, TimeSpan.FromSeconds(10));
}
catch (InvalidOperationException e) { }
SchedulerAgentTask Код:
protected override void OnInvoke(ScheduledTask task)
{
//ScheduledActionService.LaunchForTest("ToastNotifications", TimeSpan.FromSeconds(30));
if (task.Name == "ToastNotifications")
{
SendNotifications();
}
else if(task.Name == "LiveTiles")
{
UpdateTiles();
ScheduledActionService.LaunchForTest(task.Name, TimeSpan.FromSeconds(30));
}
else{}
NotifyComplete();
}
Не используйте LaunchForTest для версий версий. Приложения: http://blog.mjfnet.com/2013/01/10/windows-phone-dont-call-launchfortest-in-release/ – MikimotoH