Toast 通知,当应用程序未运行时

Posted

技术标签:

【中文标题】Toast 通知,当应用程序未运行时【英文标题】:Toast notification, when app is not running 【发布时间】:2013-03-04 19:30:40 【问题描述】:

我在 Windows Phone 8 上编写了带有推送通知服务的应用程序(仅 toast),我还没有将推送发送到我的移动应用程序的 MSSQL 作业。发送数据具有以下格式(typeId 是 int,它告诉应用程序应该如何处理 data):

<?xml version=\"1.0\" encoding=\"utf-8\"?>
<wp:Notification xmlns:wp=\"WPNotification\">
<wp:Toast>
<wp:Text1>title</wp:Text1>
<wp:Text2>subtitle</wp:Text2>
<wp:Data>typeId;data</wp:Data>
</wp:Toast>
</wp:Notification>

当我在运行应用时推送收入时,我可以通过方法为我的应用提供服务(这种情况很好)

httpChannel.ShellToastNotificationReceived += 
    new EventHandler<NotificationEventArgs>(httpChannel_ShellToastNotificationReceived);

httpChannel.BindToShellToast();

当应用程序未运行时,我的问题是无法为 toast 推送通知提供服务。使用来自 XML 的文本推送收入,但是当我单击通知时,我进入了我的应用程序的主页。我如何附加我的代码来决定 typeIddata from XML

做什么

【问题讨论】:

【参考方案1】:

我找到解决方案:XML 应该包含

<wp:Param></wp:Param>

&lt;wp:Toast&gt; 部分内的部分。在行中,我可以使用查询字符串放置查看地址。单击通知栏后,我将重定向到此视图。查询字符串中的参数将决定(在 NavigateTo 事件中)程序必须做什么:)

【讨论】:

以上是关于Toast 通知,当应用程序未运行时的主要内容,如果未能解决你的问题,请参考以下文章

处理 Toast 和原始推送通知

应用程序中收到的 WP7 推送通知

当应用程序未运行时,使用推送通知的内容更新 SQLite

当应用程序未运行时,GCM 推送通知未在某些设备中显示

当应用程序未运行时处理 JSON 推送通知解析

当应用程序未运行/注销时禁用苹果推送通知