我搜索了很多,但我没有得到任何文档或示例可以帮助我在Background Task中使用PushNotificationTrigger,就像我们使用SystemTrigger和TimeTrigger一样。
我想在我的应用关闭时收到Toast Notifications。通知即将发布,但不知道如何在后台处理。 任何在通用Windows应用程序中使用PushNotifications的人都请提供一些样本或文档来处理通知。
This is I am getting in Lifecycle Events 这是我用来注册任务的代码
if(!Windows.ApplicationModel.Background.BackgroundTaskRegistration.AllTasks.Any(i => i.Value.Name == "PushBackgroundTask"))
{
var result = await BackgroundExecutionManager.RequestAccessAsync();
var builder = new BackgroundTaskBuilder();
builder.Name = "PushBackgroundTask";
builder.TaskEntryPoint = typeof(NotificationActionBackgroundTask.NotificationActionBackgroundTask).FullName;
builder.SetTrigger(new Windows.ApplicationModel.Background.PushNotificationTrigger());
BackgroundTaskRegistration task = builder.Register();
}
由于
答案 0 :(得分:1)
我想你在这里可能有点困惑。使用PushNotification
时,服务器可以向您的设备推送4种通知:Toast, Tile, Badge and Raw Notification。
前三个通知将由通知中心接收并由系统处理。原始通知是一种不涉及UI的推送通知,其内容可以在应用程序的后台任务中使用。
我想在我的应用关闭时收到Toast Notifications。
所以不,如果你想在后台任务中使用PushNotificationTrigger
处理PushNotifications,你只能处理行通知。您可以参考PushNotificationTrigger class,此类表示一个对象,该对象在应用程序上调用后台工作项以响应原始通知的接收。
与其他推送通知不同,原始通知不具有指定的格式。有效负载的内容完全是应用程序定义的。
因此,如果你推送祝酒通知,你不需要在后台任务中处理它,它将由行动中心处理。但您可以在后台任务中处理原始通知并手动烘烤它。
有关如何将PushNotificaitonTrigger
与Raw notification
一起使用的信息,您可以参考Raw notification overview,对于后台任务中的吐司,您可以参考官方{{3} }。
<强>更新强>
要使用生命周期事件调试项目,您可以查看以下屏幕截图: Notifications sample
在调试时,您的应用生命周期取决于vs工具,但您可以点击此红色圆圈部分来调试应用的生命周期。