Windows Phone 中的 MPNS 有啥替代方案吗?

Posted

技术标签:

【中文标题】Windows Phone 中的 MPNS 有啥替代方案吗?【英文标题】:Is there any alternative for MPNS in Windows Phone?Windows Phone 中的 MPNS 有什么替代方案吗? 【发布时间】:2013-02-25 08:46:25 【问题描述】:

我想为我的 Windows Phone 应用程序支持推送通知。 Microsoft 推送通知服务是否有任何替代方案?像 MQTT 之类的东西。我在 android 中有一个类似的应用程序,其中 MQTT 用于发送推送通知。我需要为 Windows Phone 实现相同的服务。有可能吗?

【问题讨论】:

【参考方案1】:

WP 不允许您的应用在您处于后台时保持套接字连接处于活动状态。 所以这是不可能的。

您唯一的选择是让后台代理在每次运行时(大约每半小时)联系您的服务器并检查新消息。如果有消息,请使用本地 toast 通知来提醒用户。如果用户点击 toast,它将启动您的应用。

如果只需要拉下新数据,则推 通知永远不会起作用,因为他们所能做的就是 显示吐司,用户必须点击吐司才能启动应用程序 让它做任何事情。后台代理仍然是你最好的选择 在这里并在每次运行时轮询新数据。如果数据将采取 一会儿拉下来,用后台文件传输拉取数据 下到隔离存储,然后在代理或应用程序时处理它 接下来运行。

【讨论】:

那么 MPNS 是在 Windows Phone 中实现推送通知的唯一推荐方式吗?您提到我可以在后台每 30 秒向服务器发送一次请求。但是当另一个应用程序在前台运行时,WP 不允许运行后台服务。那么如何在不使用 MPNS 的情况下在后台向服务器发送请求呢? 所以我认为这是不可能的。 我刚刚发现Windows Phone中有后台代理可以使用。 msdn.microsoft.com/en-us/library/hh202942%28v=vs.92%29.aspx 现在我需要确定是否可以使用后台代理来实现推送通知。如果您有任何想法,请告诉我。 有人知道 Facebook 和 Gmail 应用程序的作用吗?他们是否使用 MPNS 进行推送通知?

以上是关于Windows Phone 中的 MPNS 有啥替代方案吗?的主要内容,如果未能解决你的问题,请参考以下文章

MPNS 错误请求 Windows Phone 8.1 (Cordova/Phonegap)

在创建通知通道 Windows Phone 7 时获取 MPNS 返回到推送客户端的 URI

有啥方法可以使用 C# 获取 Windows Phone 设备的 IMEI 号码

推送通知时的 MPNS 错误请求 (WP 8.1)

MPNS 推送通知通道从不返回 HTTPS URI

推送通知的 WNS 或 MPNS?