我的目标是每15分钟运行一次任务,即使我的程序没有启动,如果我必须通过该程序“说出”某事,也会有Toast消息。
我使用系统事件制作了背景任务声明。入口点是“GS.MT”。
我创建了一个名为GS的命名空间,然后是一个类MT,什么是IBackgroundTask。
namespace GS
{
public sealed class MT : IBackgroundTask
{
async public void Run(IBackgroundTaskInstance taskInstance)
{
BackgroundTaskDeferral deferral = taskInstance.GetDeferral();
var toast = NotificationsExtensions.ToastContent.ToastContentFactory.CreateToastText01();
toast.TextBodyWrap.Text = "FUT!";
Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier().Show(toast.CreateNotification());
deferral.Complete();
}
}
}
我使用以下代码注册:
string triggernév = string.Format("{0} MT", "GS");
BackgroundTask.EltávolításNévAlapján(triggernév); //remove if exists
Windows.ApplicationModel.Background.MaintenanceTrigger trigger = new Windows.ApplicationModel.Background.MaintenanceTrigger(15, false);
BackgroundTaskBuilder builder = new BackgroundTaskBuilder();
builder.Name = triggernév;
builder.TaskEntryPoint = "GS.MT";
builder.SetTrigger(trigger);
builder.Register();
我的代码运行,我的任务被注册,但它永远不会显示Toast消息。 如何从维护触发器的运行中显示Toast消息?
答案 0 :(得分:0)
如果你在主项目中修改了后台任务,你还没有提到,因为它不起作用,这是最可能的原因。