以编程方式将iPhone变成服务器?

时间:2012-02-01 19:34:59

标签: objective-c ios macos

我想让我的iPhone应用程序显示在Mac的屏幕上,有点像AirPlay与其他机器一样。我听到这样做的唯一方法是,虽然我不喜欢它,但将iPhone变成服务器。不幸的是,我无法弄清楚如何做到这一点。我也希望以我的Mac自动检测它的方式进行设置。我在游戏Chopper 2中看到了类似的设置。我的Mac应用程序将有一个简单的计时器,每隔几秒就会触发一次,以查找iPhone,就像Chopper 2的“查找iPhone”按钮一样。

有没有一种简单的方法可以将iPhone变成服务器,或者像Game Center那样启动“会话”?

最后一件事:我知道这在某种程度上是可能的,因为我实际上通过点击按钮为我的iPhone提供了一个网址。如果你想证明,它被称为Dicenomicon。

3 个答案:

答案 0 :(得分:1)

我不太确定“服务器”是什么意思,因为没有办法使用官方SDK共享iPhone的屏幕,虽然这可以通过越狱来实现。

然而,可以在Mac和iPhone之间来回发送数据,并在Mac上在iPhone上显示数据。使用该数据,您可以尝试在Mac上重新创建界面。所有这些都可以使用套接字完成。可能有帮助的类是cocoaAsyncSocket,这使得网络编程变得更加容易。

使用Bonjour可以在本地网络上自动发现iPhone。在不涉及太多细节的情况下,NSNetService将允许您从iPhone发布应用程序服务,NSNetServiceBrowser允许您从Mac在本地网络上查找该服务。从NSNetServiceBrowser,您可以与iPhone建立套接字连接。

祝你好运!

答案 1 :(得分:1)

首先,没有简单的方法可以将显示重定向到Mac,即使您将其设置为某种服务器。

其次,要在WLAN上发现或发布自定义服务,您可能需要参考Bonjour上的示例:

  • CocoaHTTPServer:一个简单的TCP / HTTP服务器。
  • WiTap:由Bonjour发现并连接到WLAN上同类服务的应用。

答案 2 :(得分:-2)

你可能想看一下GameKit API,我知道他们在两个iOS设备之间做了类似的事情。

http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/Introduction/Introduction.html