我能否将通知从 WP8 推送到 Windows 应用商店应用程序?
Posted
技术标签:
【中文标题】我能否将通知从 WP8 推送到 Windows 应用商店应用程序?【英文标题】:Will I be able to push notifications from WP8 to a Windows Store app? 【发布时间】:2012-10-16 21:38:58 【问题描述】:我需要在 WP8 应用和 Windows 应用商店应用之间传递消息。这是一种“点对点”的情况,因为它们将相互发送和响应消息,但它也是一种“客户端/服务器”的情况,因为 Windows 应用商店应用程序将具有 1..N与之对话的 WP8 应用程序。
在我第一次尝试偷偷摸摸地使用电子邮件或 SkyDrive 的想法被打得头破血流之后,我现在正在考虑这些可能的架构:
1) 直接推送通知 (a) WP8 应用程序通过在此对话发生后提供的 URI 向 Windows 应用商店应用程序发送推送通知: Windows 应用商店应用程序:“你会向我发送更新吗?” WP8 应用程序:“是的。” Windows 应用商店应用:“好的,发送到这里。” (b) Windows 8 响应到达的消息。
2) 使用云的推挽式 (a) WP8 将数据发送到云端(Azure?) (b) Windows 8 应用定期轮询它
3) SSL(使用 /NSoftware (IP*Works) 之类的组件)
来自 WP8 的消息相当频繁(平均每 15 分钟一次),但很小/很短(实际上短到足以成为推文)。 Windows 8 应用程序在“幕后”处理这些消息。用户在运行关联的应用程序之前不会意识到它们。
【问题讨论】:
选项 1 似乎是最好的方法 - 也许实现您自己的 API,它将所有 WP8 通知排队并管理他们访问的用户,然后将通知推送到 Microsoft 的服务器以分发到任何地方。 Azure 在这方面有很大帮助 - 您可以使用他们的 Microsoft 帐户进行身份验证,并且推送通知非常简单。 3) 这绝对是可能的,您可以使用 IP*Works!用于创建客户端/服务器应用程序的 SSL 工具包。它不会使用任何推送通知,但一侧可能托管一个 IPDaemon 实例,而另一侧则有 IPPort。然后,当您需要向其他应用程序推送某些内容时,您可以发送一些内容来告诉其他人该做什么。 【参考方案1】:没有任何问号 :) 但这是我的看法:
推送通知肯定会起作用,但鉴于您的“幕后”评论,您可能需要专门查看"raw notifications",它确实使用推送通知机制但与 UI 无关(如瓷砖、吐司或徽章)。例如,如果客户端离线,推送的 toast 通知就会被丢弃。
消息的频率让我对轮询方法持怀疑态度,因为它会影响电池寿命(也就是说,不确定与后台任务的推送通知如何比较)。使用轮询方法,您也需要在“云服务”上有某种方式来维护消息(存储),然后在每次轮询时反馈正确的消息等。您还需要处理扩展和可用性方面WNS 会“免费”。不是火箭科学,而是更多的工作。推送通知有点“即发即弃”。
使用套接字,您可以在沙盒模型公开您需要的功能的范围内进行更多控制。不过,这似乎是更多的活动部分,只有在其他两种方法不可行的情况下,我才可能走这条路。
【讨论】:
有一个 ?在标题中;顺便说一句,你关于这个主题的文章/博客文章让我意识到它。 啊,是的,错过了那个“?” :) 随时离线跟进,我会对您采取的方法感兴趣 - 这里没有“正确”的答案。 joneil AT Microsoft DOT com(或使用联系我链接 - 我的照片 - 在博客上)以上是关于我能否将通知从 WP8 推送到 Windows 应用商店应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
无需谷歌云消息(GCM)将通知从 PC 推送到 android