当我的应用程序正在运行时,我可以在ShellToastNotificationReceived(对象发送者,NotificationEventArgs e)事件处理程序上接收toast通知作为e.Collection中的键。
如果我的应用程序未运行并且Toast通知到达,则会显示Toast但我如何处理此通知?
我的意思是当我的应用程序未运行且通知到达时,哪个事件会触发。
我知道背景代理但不符合我的要求
感谢。
答案 0 :(得分:2)
Windows Phone平台负责处理Push Notifications
,并且开发人员在应用未运行时无法直接访问通知处理。这意味着在收到Toast
后您无法执行任何后台逻辑。但是,当Toast
消息包含<wp:Param>
值且Uri
到特定应用页面时,如果用户点击Toast
弹出窗口,则用户将被重定向到此页面。因此,您可以在用户点击Toast
弹出窗口后执行特定的工作。要完成此操作,您需要向Uri
添加一个参数,例如/YourPage?IsToast=true
并覆盖页面的OnNavigatedTo
方法以运行您的业务逻辑:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (NavigationContext.QueryString.ContainsKey("IsToast"))
{
//do your business here
}
}
对于其他情况,您需要使用后台工作程序。
答案 1 :(得分:1)
是的,我们可以处理吐司通知。一旦用户点击Toast通知,我们就可以向我们的Web服务发送请求并完成我们的工作。
当用户点击Toast通知时会发生什么情况,它会重定向到App.Xaml.cs页面中的应用程序启动事件。在那种情况下,根据吐司内容,您可以继续下一步。
希望这会有所帮助。
如果你没有完成,只需给我发邮件
快乐的编码。