iOS App和Mac App之间的强大实时通信

我们正在制作一个展览( http://pulse.media.mit.edu ),我是iOS,objective-c和Xcode的新手。 展览截止日期是一周,我被困住了。

我遇到的问题似乎很简单。

我们的展览有投影仪和iPad。 投影机将连接到Mac并播放video。 iPad将充当这些video的控制器。 更简单:

我在Mac上有50个video。 我需要在Mac上开发一个应用程序,当打开它时会循环其中一个video。

在iPad上,我需要开发一个可以在Mac上实时更改video的应用程序。 iOS应用程序已经设计好了,我们只是在努力解决一些代码问题。

在Mac上,当iPad告诉Mac更改video时,我们希望它使用Core Animation在video之间切换,如下所示(http://youtu.be/pyd8O-2mkgk?t=1m)。

所以我的问题是:最有效的方法是什么? 它必须能够在博物馆中运行两个月。 有些事情需要考虑:

  • 我们距离4000英里,无法一直监控它。 我们会每晚检查一下它是否仍在工作,但它应该在没有破坏的情况下运行。
  • 如果人们拔掉iPad,它仍应该可以使用。
  • 它应该尽可能健壮。

我该怎么做才能做到最好? 我应该从iPad写入数据库到连接的Mac上本地运行的数据库,然后每秒监控该数据库10次吗? 套接字是否足够坚固以便单独使用?

如果你确实建议了一种方法,请指点我可以帮助我快速做到这一点的一些资源(框架,function名称等)的方向?

感谢您的时间。

我会选择中间服务器选项,因为它最容易调试,并且只需要客户端上的工作互联网(wifi)连接。 遇到连接问题时,您只需要知道如何将iPad或Mac连接到互联网。 你可以看到服务器端哪个设备连接有问题。

此外,使用普通的HTTP声音是最好的通信方式,后端可以用任何服务器端脚本语言编写。 两个客户端应该每隔X秒轮询一次服务器。

如果您在截止日期之前完成了这个基本设置,那么您可以尝试让设备直接连接到彼此(为了减少用户体验),并将服务器解决方案留在那里作为后备方法。 Mac应用程序可以充当HTTP服务器,接受与iPad通常发送到服务器的命令完全相同的命令。 挑战在于可靠地了解要连接的IP。 您可以对其进行硬编码或使用Bonjour。