使用带有 NSXPCConnection 的套接字时遇到问题。
基本上,有一个主进程和一个辅助进程正在运行,通过 NSXPCConnection 建立。该辅助进程需要充当服务器并侦听特定端口(例如 111),该端口接收外部连接。
助手进程使用Apple 提供的TCPServer
助手类(wrapper around )打开一个监听套接字。CFSocket
代码在这里找到:
https ://code.google.com/p/iphone-remotepad/source/browse/trunk/RemotePad/TCPServer.h?r=238
套接字在 中成功打开- (BOOL)start:(NSError **)error
。
外部客户端可以建立与 111 端口。(通过终端测试telnet localhost 111
)。
但是,辅助进程永远不会收到 TCPServer 回调TCPServerAcceptCallBack
。
助手进程已com.apple.security.network.client
启用权利。
此外,当我在主应用程序而不是辅助进程中运行 TCPServer 时,在端口 111 上设置服务器,并尝试连接到端口 111,我确实收到了回调。
关于帮助程序进程为什么没有收到套接字回调的任何想法?XPC 相关问题?