【问题标题】:push notifications with param don't receive windows phone带参数的推送通知不接收 Windows Phone
【发布时间】:2013-09-06 19:23:26
【问题描述】:

我遇到了一个非常奇怪的问题。我已经在我的应用程序中实现了推送通知,它工作正常,但前提是我不发送带有推送通知的参数。我的应用程序是 Windows Phone 8 应用程序。

由于某种原因,带有参数的推送通知不会到达我的手机,但如果没有参数,它们会。我已经尝试了很多“输入”来检查它是否是因为它不是有效的 uri、字符串等,但没有任何反应。

更奇怪的是,来自 Microsoft 服务器的响应说它已交付。

HTTP/1.1 200 OK 缓存控制:私有服务器:Microsoft-IIS/7.5 X-DeviceConnectionStatus:已连接 X-NotificationStatus:已收到 X 订阅状态​​:活动 X 消息 ID: 00000000-0000-0000-0000-000000000000 活动 ID: 381e48cc-7a1d-4076-979d-953a622bfc7d X 服务器:DB3MPNSM009 X-AspNet-版本:4.0.30319 X-Powered-By:ASP.NET 日期:9 月 6 日,星期五 2013 19:17:32 GMT 内容长度:0

发送,但不接收:

<?xml version="1.0" encoding="utf-8"?>
                <wp:Notification xmlns:wp="WPNotification">
                   <wp:Toast>
                        <wp:Text1>Title test</wp:Text1>
                        <wp:Text2>Message test</wp:Text2>
                        <wp:Param>/Page2.xaml</wp:Param> 
                   </wp:Toast>
                </wp:Notification>

发送,但不接收

<?xml version="1.0" encoding="utf-8"?>
                <wp:Notification xmlns:wp="WPNotification">
                   <wp:Toast>
                        <wp:Text1>Title test</wp:Text1>
                        <wp:Text2>Message test</wp:Text2>
                        <wp:Param>/Page2.xaml?id=34</wp:Param> 
                   </wp:Toast>
                </wp:Notification>

发送和接收

<?xml version="1.0" encoding="utf-8"?>
                <wp:Notification xmlns:wp="WPNotification">
                   <wp:Toast>
                        <wp:Text1>Title test</wp:Text1>
                        <wp:Text2>Message test</wp:Text2>
                        <wp:Param></wp:Param> 
                   </wp:Toast>
                </wp:Notification>

我不知道问题可能出在哪里。我希望有人可以帮助我。

问候,

汤姆

【问题讨论】:

    标签: c# windows-phone-7 windows-phone-8 push-notification mpns


    【解决方案1】:

    答案可能在这里http://msdn.microsoft.com/en-us/library/windows/apps/jj662938(v=vs.105).aspx...我在使用多个查询字符串参数时遇到了同样的问题。

    我做了?something=value&amp;amp;somethingelse=value(失败) 然后我注意到&amp;amp; 在示例中是使用&amp;amp; 编码的。

    所以当我把它改成?something=value&amp;amp;somethingelse=value时,就成功收到了通知。

    【讨论】:

    • 您的回答解决了我的问题。原来,首先,我使用的是“&”而不是“&”。一旦我改变了它,我只是发送了“Param”值。因此,当应用程序未在前台运行时,当 toast 到达时,我的应用程序没有收到任何额外的数据。但后来,我注意到我可以使用第四个节点:“NavigationUri”。只有当 toast 到达时应用程序正在运行时,才会读取参数。 NavigationUri(重新)在特定页面上启动应用程序
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多