2015-08-04 4 views
4

Я тестирую фоновый пример с Scenario4 и он никогда не звонит Беги, я следую инструкциям, и вот что я вижу:BackgroundTask UWP для Windows 10 TimeTriggeredTask Примера зарегистрирован, но никогда не разжигает

1.- После вызова

BackgroundTaskRegistration task = builder.Register(); 

задача имеет Trigger = нуль

должно быть указано триггером ли ранее в

builder.SetTrigger(trigger); ? 

2.- Теоретически, когда я регистрирую фоновое задание, он должен появиться здесь EventViewer - BackgroundTaskInfrastructure, но он не должен появляться здесь?

3.- Чтобы попытаться отладить I Debug Location - Приостановить приложение, но после более чем 15 минут он никогда не прибывает, должен быть простым, как приостановить и подождать?

Также я добавил в Run уведомления:

var toastXML = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01); 
var toastTextElements = toastXML.GetElementsByTagName("text"); 
toastTextElements.First().AppendChild(toastXML.CreateTextNode("Hello World:")); 
var toastNotification = new ToastNotification(toastXML); 
toastNotification.ExpirationTime = DateTimeOffset.UtcNow.AddSeconds(30); 
ToastNotificationManager.CreateToastNotifier().Show(toastNotification); 

Но он никогда не появляется. Так работает BackgroundTask с TimeTrigger?

+0

У меня такая же проблема, но еще нет решения. – Cristian126

+0

Такая же проблема, TimeTrigger никогда не запускает BackgroundTask на рабочем столе, однако она отлично работает на телефоне. –

ответ

4

В моем случае у меня есть ожидание вызова метода Run BackgroundTask. После просмотра видео https://channel9.msdn.com/Events/Windows/Developers-Guide-to-Windows-10-RTM/Background-Execution я узнаю, что я должен позвонить в:

var cost = BackgroundWorkCost.CurrentBackgroundWorkCost; 

И получить

var deferral = taskInstance.GetDeferral(); 

И, наконец, когда мои звонки закончить звонить:

deferral.Complete(); 

с тем, что в настоящее время он всегда вызывает мою задачу, единственная проблема, и я думаю, что это не разрешено, так это то, что я не могу позвонить:

Launcher.LaunchUriAsync(new Uri(favorite.Uri, UriKind.Absolute)); 

может быть пусковой установкой не допускается, но тост теперь отображается каждые 15 минут.

+0

Можем ли мы показать тост каждые 5 минут? –

+1

@KinjanBhavsar Нет, самый маленький TimeTrigger, который у вас есть, составляет 15 минут –