我有一个 iPhone VOIP 应用程序,可以处理使用 BSD 套接字设置的多路传输和接收(即电话会议)。我希望它能够在后台响应传入的请求,但是根据我对 iOS 4 文档的理解,我只能通过将属性设置为 NSStreamNetworkServiceTypeVoIP 在 NSStream 对象(或 CFRead/WriteStream)上执行此操作. 这有点问题,因为我的系统是基于 UDP BSD 套接字的应用程序。一切都在单个 UDP 套接字上接收和发送。
我是否需要重写我的音频传输/接收核心来处理 NSStreams,或者有没有办法让 iOS 4 以类似于 NSStream 的方式处理我的 BSD 套接字?我认为这可能是一个问题,因为 NSStream 是基于事件的。
是否可以检测应用程序何时进入后台并构建一个临时 NSStream 对象,该对象将通过相关处理将数据传递给然后继续正常运行?甚至可以创建一个 UDP NSStream 吗?
有任何想法吗?