作为最后一个学校毕业项目,我尝试开发一种 spy 车。这意味着一辆小乐高汽车上放置了一部 iPhone,而一部 iPad 则用作汽车的“方向盘”。此外,还计划将音频和视频从 iPhone 的麦克风/摄像头传输到 iPad(超过转向数据,反之亦然)。 首先,从 iOS 到 iOS 的连接应通过本地 WiFi 网络建立,然后 - 如果可能 - 通过 3G (通过使用 iOS 设备网络 IP 和 DNS 服务器来处理频繁更改的地址)。
我的问题是:您建议使用哪种技术?我读到了 GameKit、点对点等内容,但我认为这些技术对于以后能够通过 3G 进行通信来说太抽象了。我想我需要更深入地了解沟通进展的低水平。任何可以让我进步的建议都将受到高度赞赏! (也关于我项目的其他部分)
还有一件事:一些用户建议使用第三方服务并通过外部服务器路由发送的(视频)数据。如果可能的话,我宁愿不使用任何“中间人”。它应该只是一个基本的服务器-客户端通信,其中 iPad 是服务器,iPhone 是客户端。
最佳答案
这是一个开放式问题,但很有趣。
首先,GameKit 确实有 3g p2p 支持,请参见这里: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/GameKit_Guide/Matchmaking/Matchmaking.html
它将处理点对点寻址和套接字的建立。它还可以处理语音聊天,但我个人从未尝试过此功能,所以我不能说它是否适合您的情况。
一个想法是利用现有的视频聊天服务。这将为您提供具有点对点寻址的低延迟音频/视频 channel (好吧,可能使用中央服务器)。
Apple 的 FaceTime 就是这样一种服务,但它没有公共(public) API(据我所知)。 Skype 和 Google 也是如此。
有一些付费服务看起来有很好的 iOS API:
你必须想出一种方法来向对等iPhone传输控制命令,我没有看到上面的服务是否有可能发送短信/任意数据。
Tokbox 有免费试用版,因此您可以尝试一下,看看它是否适合您。
如果这是一个预算有限的爱好项目并且有时间进行黑客攻击,我会选择 GameKit,如果有截止日期,我可能会考虑更高级的 API...
关于通过流(通过 IP 地址)的 iOS 到 iOS 设备连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20082955/