進行通信我已經完全按照Apple提供的Sandboxed Helper App示例進行操作,並且所有程序似乎都運行良好。我能夠成功創建一個NSXPCConnection
對象,並且還可以取回我的遠程對象(通過remoteObjectProxyWithErrorHandler
)。幫助者mac應用程序(登錄項)無法與
然而,當我打電話代理對象(在協議定義中定義)上的方法,我回來這個錯誤:
Failed to connect to launch agent: Error Domain=NSCocoaErrorDomain Code=4099 "Couldn’t communicate with a helper application.
基本上沒有不管我做什麼,我不能與溝通我幫手應用程序。我沒有做任何事情,只是試圖簡單地調用幫助器應用程序到NSLog()。但它不起作用。奇怪的是我也沒有看到任何內部輸出:
- (BOOL)listener:(NSXPCListener *)listener shouldAcceptNewConnection:(NSXPCConnection *)newConnection
我可能會做錯什麼?
更新: 顯然,如果我取消選中「啓用應用程序沙盒」我的主應用程序,它的工作原理!所以,在啓用沙盒之後,它不想與我的幫助程序通信。我需要更多權利嗎?我已經在xcode下全部嘗試過了!
如果你打開控制檯,你是否得到沙盒mach查找違規? – Samir
不,但我找到了一個解決方案,下面解釋 – strange