iOS与OS X通信

时间:2010-09-26 20:43:27

标签: iphone objective-c macos

我正在寻找一个指向正确方向的指针,开始编写一个向OS X发送命令的iPhone应用程序,例如告诉OS X进入睡眠状态。我似乎无法找到文档的相关部分?

3 个答案:

答案 0 :(得分:3)

AFAIK,大多数应用程序一直在与客户端/服务器设计进行这种通信,其中“服务器”应用程序在主机OS X机器上运行,而iOS设备上的“客户端”应用程序使用某种类型的协议(HTTP?Bonjour?)。

你不会在文档中找到这个,因为这是一个很少有应用程序需要的利基设计模式(特别是因为现在可以使用新版本的iOS和iTunes更轻松地共享文档)。

答案 1 :(得分:2)

iOS不支持ObjC远程对象,这是在两台OS X机器之间进行通信的最简单方法。

HTTP客户端/服务器方法的替代方法可能是让您的iPhone应用程序通过远程Unix shell连接到OS X机器(通过ssh),然后发出Unix或AppleScript命令来执行系统操作。

答案 2 :(得分:2)

您还可以设置套接字连接。我已经为Android做了一个应用程序,它对Windows计算机完全相同。该应用程序正在计算机商店中使用:)

对于Mac,您必须使用sudo命令,因此您需要用户在首次使用时输入密码。

当服务器应用程序在套接字输入上获得预定义的字节流时,Mac上的服务器应用程序可以向终端发送“sudo shutdown -h now”。