XPC在Mac osx上的实现

时间:2013-10-21 07:11:46

标签: macos cocoa xpc

XPC服务不是一个单独的Target,而是一个在app中实现监听器委托的内置类。我在网上看到的所有示例都有单独的目标,它们构建一个xpc服务工具并将其复制到app资源文件夹以支持传入连接。有没有办法像我想要的那样做?

1 个答案:

答案 0 :(得分:0)

没有没有...抱歉直言不讳并破坏你的周末。

XPC作为服务运行,即

YouApp.app
   Contents
   XPCServices/
          SomeService.xpc

不要让" xpc"扩展愚弄你,它注意到了一个" app"用外行的话来说。

当" YouApp.app"启动,启动(使你的mac tic的大爸爸)得到通知并开始调查。

launchd之所以对他们如此挑剔(libxpc)是因为他们在低级别运行并且可能有害,但是......因为他们在允许级别运行,他们非常讨厌并做他们的有效率地工作。

初学者入门的一个好例子是:

https://developer.apple.com/library/mac/samplecode/SandboxingAndNSXPCConnection/SandboxingAndNSXPCConnection.zip

基本上,有1个应用程序和2个XPC服务。

,流程如下:

1)应用程序启动 2)launchd(除其他事项外,授权运行XPC服务) 3)应用程序要求一项服务从互联网上下载您可以在URL中输入 4)该服务下载它,将其保存在所有服务(和应用程序)也可以访问的位置,即应用程序组。 5)然后,应用程序要求其他服务" zip"它

那就是它。

最初需要一段时间才能解决,最令人沮丧的是代码签名。

只是一个预警。如果你想让它运行得很好,你可能会终止代码从终端而不是让XCode。

另一个值得关注的是#34;计划"。确保您正确设置了XPC调试设置,或者它只是看起来像是没有发生的事情

最后,Console是你的朋友:D在调试XPX时保持打开状态。