【发布时间】:2015-08-04 17:32:27
【问题描述】:
我正在使用 GCDAsyncSocket、GCDAsyncUdpSocket 和 NSNetService 做一个 P2P VoIP 应用程序,以在网络上使用该应用程序查找其他设备。 我有一个 TCP 套接字来传输用户数据并协商 UDP 连接。
我需要保持 NSNetService 服务在应用程序处于后台时发布 Bonjour,并保持一个打开的套接字以接收来自其他设备的请求。
按下 iPhone 的 HOME 键,socket 不断开但不响应,只有在应用重新打开时才会向应用发送数据。通过阻塞屏幕,套接字被关闭。
应用程序关闭时要发布的 NSNetService。
我激活了后台 VoIP App、音频等选项。
我用过
[ asyncSocket performBlock : ^ {
[ asyncSocket enableBackgroundingOnSocket ];
}];
有人知道如何在 iPhone 锁定时保持 Socket 和 NSNetService 正常工作吗?
【问题讨论】:
标签: ios background-process voip gcdasyncsocket nsnetservice