在应用程序closures时处理Windows Phone 8.1中的Toast通知

我正在用Windows Phone 8.1应用程序(使用HTML / JS,CSS)处理Toast Notifications,用户通过以下代码片段点击通知(在操作栏上):参考: https : //msdn.microsoft.com/en-us /library/windows/apps/hh761468.aspx

WinJS.Application.addEventListener("activated", onActivatedHandler, false); function onActivatedHandler(args) { if (args.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) { localStorage.messageDetails = args.detail.arguments; window.location.href = "index.html"; } } 

当应用程序在前台或后台运行时,效果很好。 但是,当我点击通知时,当应用程序没有运行(前景或背景)时,它不会触及上面的代码片段。 我不知道我在做什么错。 请帮助我。 提前致谢。

我不知道为什么它不能正常工作,因为你已经正确地实施了。 但有两点我希望你检查,我希望你的问题将得到解决。

  1. 尝试使用pushnotificationreceived事件,它会给你整个吐司通知xml字符串,你可以进一步处理它。

  2. 启动被触发时,页面可能无法加载整个html和javascript。 因此,您可以在激活的事件处理程序的If条件内使用Window.SetTimeout 1秒或更长时间的延迟。