Objective c iOS应用程序和Mac应用程序之间强健的实时通信

Objective c iOS应用程序和Mac应用程序之间强健的实时通信,objective-c,ios,macos,ipad,sockets,Objective C,Ios,Macos,Ipad,Sockets,我们正在制作一个展览(),我是iOS、objective-c和Xcode的新手。展览的最后期限还有一周,我被卡住了 我遇到的问题似乎很简单 我们的展品有一台投影仪和一台iPad。投影仪将连接到mac电脑上并播放视频。iPad将作为这些视频的控制器。更简单地说: 我在Mac上有50个视频。我需要在Mac上开发一个应用程序,当它打开时,将循环其中一个视频 在iPad上,我需要开发一个可以在mac上实时切换视频的应用程序。iOS应用程序已经设计好了,我们只是在努力编写一些代码 在mac上,当iPad告

我们正在制作一个展览(),我是iOS、objective-c和Xcode的新手。展览的最后期限还有一周,我被卡住了

我遇到的问题似乎很简单

我们的展品有一台投影仪和一台iPad。投影仪将连接到mac电脑上并播放视频。iPad将作为这些视频的控制器。更简单地说:

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

在iPad上,我需要开发一个可以在mac上实时切换视频的应用程序。iOS应用程序已经设计好了,我们只是在努力编写一些代码

在mac上,当iPad告诉mac更换视频时,我们希望它使用核心动画在视频之间切换,如下图所示(http://youtu.be/pyd8O-2mkgk?t=1m)

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

  • 我们在4000英里之外,不能一直监视它。我们将 每晚检查,看看它是否仍在工作,但它应该运行一天 不间断
  • 如果人们拔掉iPad的插头,它应该还能工作
  • 它应该尽可能健壮
我如何才能最好地做到这一点?我是否应该将iPad上的数据库写入连接Mac上本地运行的数据库,然后每秒监视该数据库10次?插座是否足够坚固,可以单独使用?

如果你确实提出了一种方法,你能告诉我一些资源(框架、函数名等)的方向吗?这些资源可以帮助我快速做到这一点


谢谢您的时间。

我选择中间的服务器选项,因为它最容易调试,只需要客户端的工作互联网(wifi)连接。当出现连接问题时,你所需要的只是一个知道如何将iPad或Mac连接到互联网的人。您可以看到服务器端哪个设备存在连接问题

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


如果您在截止日期之前让这个基本设置正常工作,您可以尝试让设备直接相互连接(以减少迟钝的用户体验),并将服务器解决方案作为备用方法保留在那里。Mac应用程序可以充当HTTP服务器,接受iPad通常发送到服务器的相同命令。挑战在于可靠地知道要连接到哪个IP。您可以硬编码或使用“你好”。

这可能在很大程度上取决于您播放视频的程序。如果视频播放器程序响应AppleScript命令,那么我首先要弄清楚如何编写一个AppleScript,在Mac上运行时控制视频播放器。一旦这一切正常,下一步将是找出如何从iPad调用该脚本。。。也许是通过ssh或rsh。当你说“没什么关系”。。。你发现了什么?这怎么没用?我想我最感兴趣的是策略。我不确定什么是可靠的。这是为了一个离我家2000英里的展览。虽然我可以遥控,但我不能经常检查它是否关闭。我希望有人能说:“这种方法是iPad和计算机之间最可靠的实时通信。使用wifi是因为xyz。这里有一些关键区域需要查看。控制视频的QTKit。[插入框架]对于实时通信等,我可以在那之后把它拼凑起来。但现在,我没有真正的线索。你看过吗?我看过了。那怎么办呢?从iPad,将视频id发送到mysql数据库?然后在mac上,循环,不断地检查数据库的变化?