首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在同一网络中通过多个iphones同步应用程序状态?

如何在同一网络中通过多个iphones同步应用程序状态?
EN

Stack Overflow用户
提问于 2011-05-02 22:07:26
回答 3查看 477关注 0票数 2

我正在开发一个iPhone应用程序,它允许通过一系列操作进行基本单击。这些系列是预定义的,并与公共配置服务器同步。

该应用程序可能同时运行在多个设备上。假定所有设备上都定义了相同的操作系列。所有设备都被认为是平等的,没有服务器和多个客户机之类的东西。

(只)任何人在任何特定时间使用其中一个装置,但该人有可能在任何给定时间切换至另一装置。所有“被动”设备都需要与主动设备同步,以便它们显示相同的动作。

整件事应该尽可能自动发生。没有选择的设备,配置,所有设备在同一网络中参与相同的一系列行动。

另一项要求是,设备可以在演示(一系列操作)期间加入,并需要跳转到当前活动的操作。

现在,我看到了实现网络/通信部分的两种选择:

  • 你好。我已经实现了一个工作原型,可以自动连接到网络中的一个(1)其他设备,并与之通信。我不知道在这一点上“多设备”的要求是多少额外工作。我是否必须为每个设备打开一组连接,并手动将同步事件发送给所有这些设备?有什么更好的方法吗?还是有什么能帮到我的?Bonjour提供了什么,因为我想与网络中的每一个设备进行通信?
  • 多播与AsyncUdpSocket。只需定义一个端口并将多播同步事件发送到该端口。我想与与tcp一起使用bonjour相比,主要问题是连接不安全,数据包可能丢失。然而,这是在一个私有的,受保护的无线局域网的低流量如果这将是一个真正的问题。还有其他我看不到的缺点吗?因为这听起来是个相对容易的选择。

你建议哪一个?还是我没有想到的另一种更好的选择?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-16 19:02:03

您应该查看GameKit (内置于iOS)--它们在一个方便的包中有很多您需要的机器。您可以很容易地发现网络上的对等点,并且很容易地在客户端之间(广播或对等点)发送数据。

票数 2
EN

Stack Overflow用户

发布于 2011-05-16 18:58:25

以我的经验,Bonjour很适合你想要的东西。有一个很好的教程,提供了相关的源代码:喋喋不休,可以很容易地修改以满足您的需要。

票数 1
EN

Stack Overflow用户

发布于 2011-05-19 14:05:56

我为iphone (没有集中式服务器)搭建了一条分布式消息总线,这对此非常有用。应该注意的是,UI的家伙把代码搞得一团糟,所以这就是龙:https://code.google.com/p/iphonebusmiddleware/

其基本思想是利用善意与领导人选举形成网络。领袖成为所有奴隶都订阅感兴趣话题的枢纽。然后将发送到给定主题的任何消息传递给订阅到所述主题的每个节点。主脱离简单意味着重新启动领导人选举过程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5863003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档