2011-04-07 30 views
2

是否有任何框架/ API可以轻松地找到其他设备并在它们之间共享数据?任何API在两个iphones/ipod touch/ipads之间共享数据? (GameKit除外)

请不要游戏套件。而bonjour会很棒,但它的构建很复杂。可能有任何使用Bonjour的API?

编辑:有没有基于Bonjour的API /框架?

+1

是什么让你说Bonjour太复杂了?它真的很复杂,还是它可能比另一项服务允许更多的定制。当你实施另一项服务时,会发生什么情况,以至于无法按照你的需要去做FeatureX。然后,您必须重新编写软件以适应该缺失功能。 – FreeAsInBeer 2011-04-07 17:04:58

回答

0

卓悦很可能是最好一起去。它得到了Apple的支持,所以你可以指望它在未来几年内工作,只会随着时间的推移而变得更好。

+0

我更新了我的问题。 – cocos2dbeginner 2011-04-07 17:21:51

4

我知道你已经彻底驳回了Bonjour,但是你也许可以利用包装类来使它更易于管理。例如,Bill Dudney在他的sample Bonjour iPhone application(描述为here)中创建了这样的包装。我生成了Mac version of this sample application以显示您如何在iPhone和台式PC之间进行通信。您可以在网络会话my class on iTunes U中看到此操作,以及其他一些点对点通信的例子。

对于设备设备发现和通信,Bonjour或基于它的东西(比如GameKit)将是您的最佳选择。例如,Bonjour是通过蓝牙发现本地iPhone的唯一方式(同样,GameKit利用此功能)。它也可以透明地与WiFi或蓝牙一起工作,因此您可以创建与网络无关的通信代码。

GameKit在Bonjour上面提供了一个很好的抽象层,所以我不会立即拒绝它。如果您担心此用户界面,您可以决定不使用系统提供的GKPeerPickerController。

+0

对于bill dudney和你的观点的例子+1 ...我不想使用GKPeerPickerController,所以我试图做我自己的界面,但它从来没有工作......(没有同龄人等......)和问题是gamekit只支持2个设备(总数)。是否有使用超过2个设备且不使用GKPeerPicker的gamekit的任何示例?因为我想要我自己的界面,但我甚至没有在网上找到任何指南:/任何帮助? – cocos2dbeginner 2011-04-08 12:46:57

+1

@ cocos2dbeginner - 游戏套件不仅支持使用客户端/服务器模型的双设备点对点连接(我相信限制是四个设备)。 Chris在这里回答了这个问题:http://stackoverflow.com/questions/5504194/connect-3rd-device-using-gamekit/5570462#5570462。另见http://www.iphonedevsdk.com/forum/iphone-sdk-development/40710-gamekit-api.html。请注意,当两台以上的设备进行通信时,蓝牙变得不可靠,因此您可能需要依靠WiFi进行通信。 – 2011-04-08 14:26:07

+0

好吧我会试试.... ....但真的没有这个服务器/客户端模型的示例项目? – cocos2dbeginner 2011-04-08 15:27:03