iOS VOIP应用程序不接受后台的新套接字连接

iOS VOIP应用程序不接受后台的新套接字连接,ios,voip,Ios,Voip,我正在尝试实现一个iOS VOIP应用程序 我正在使用GCDAsyncSocket在端口上侦听连接。我确实在info.plist中添加了所需的后台模式,并将readstream和writestream注册到kcfNetworkServiceTypeVOIP 我还添加了KeepAliveTimeOutHandler来唤醒应用程序。处理程序块只是将唤醒时间打印到标准输出 只要应用在前台,就会接受新的连接,但当应用在后台时,应用不会被唤醒,并且当应用再次移动到前台时,所有尝试的连接都会发送到套接字 我

我正在尝试实现一个iOS VOIP应用程序

我正在使用GCDAsyncSocket在端口上侦听连接。我确实在info.plist中添加了所需的后台模式,并将readstream和writestream注册到kcfNetworkServiceTypeVOIP

我还添加了KeepAliveTimeOutHandler来唤醒应用程序。处理程序块只是将唤醒时间打印到标准输出

只要应用在前台,就会接受新的连接,但当应用在后台时,应用不会被唤醒,并且当应用再次移动到前台时,所有尝试的连接都会发送到套接字

我寻找了许多解决办法,但都没能奏效


提前感谢。

我不确定它是否仍然与您相关,但以防其他人阅读此问题。
例如,如中有关stackoverflow的其他类似问题所述,您只能有一个处于NetworkServiceTypeVOIP模式的套接字。否则,它们都将无法工作,您的应用程序将无法唤醒,也无法接受新连接

可能是因为苹果只是为你们存储连接的插座,所以通过这些插座的信息可以到达,但新的插座无法建立。我见过其他人也有这样的问题。我也遇到过这个问题,我读了下面的博客,但没有帮助: