我有一个iPhone VOIP应用程序,应对多个多发送和接收(即电话会议)设置使用BSD。我希望它能够在后台响应传入的请求,但根据我对iOS 4文档的理解,我只能在NSStream对象(或CFRead/WriteStream)上通过将属性设置为NSStreamNetworkServiceTypeVoIP来做到这一点。这有点问题,因为我的系统是一个基于UDP BSD套接字的应用程序。所有内容都在单个UDP套接字上接收和发送。
我是否需要重写我的音频发送/接收核心来处理NSStreams,或者有没有一种方法可以让iOS 4以类似于NSStream的方式来处理我的BSD?我认为这可能是一个问题,因为NSStream是基于事件的。
是否有可能检测到应用程序何时进入后台并构建一个临时NSStream对象,该对象将通过相关处理将数据传递到,然后照常继续?是否有可能创建一个UDP NSStream?
有什么想法吗?
发布于 2010-08-14 02:47:56
可以使用CFSocketCreateWithNative()从文件描述符中创建套接字,然后使用CFStreamCreatePairWithSocket()创建一对流。它可能允许您在UDP套接字上使用它们。如果流不读取数据,除非您提出要求,否则您可能能够直接使用FD。
祝你好运!
https://stackoverflow.com/questions/3478344
复制相似问题