1

我需要在 WP8 应用程序和 Windows Store 应用程序之间传递消息。这是一种“点对点”的情况,因为它们将相互发送和响应消息,但它也是一种“客户端/服务器”的情况,因为 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 应用程序在“幕后”处理这些消息。用户在运行关联的应用程序之前不会意识到它们。

4

1 回答 1

1

没有任何问号:)但这是我的看法:

  1. 推送通知肯定会起作用,但鉴于您的“幕后”评论,您可能希望专门查看“原始通知”,它确实使用推送通知机制但与 UI 无关(如磁贴、吐司或徽章)。例如,如果客户端离线,推送的 toast 通知将被丢弃。

  2. 考虑到对电池寿命的影响,消息的频率让我对轮询方法持怀疑态度(也就是说,不确定与后台任务的推送通知如何比较)。使用轮询方法,您也需要在“云服务”上有某种方式来维护消息(存储),然后在每次轮询时反馈正确的消息等。您还需要处理扩展和可用性方面WNS 会“免费”。不是火箭科学,而是更多的工作。推送通知是一种“即发即弃”。

  3. 使用套接字,您可以在沙盒模型公开您需要的功能的范围内拥有更多控制权。不过,这似乎是更多的活动部分,只有在其他两种方法不可行的情况下,我才可能走这条路。

于 2012-10-17T00:10:11.227 回答