有一种Cocoa方法可以在两个沙盒应用程序之间传递信息吗?

时间:2017-07-26 15:08:27

标签: cocoa ipc nsnotificationcenter

我正在编写两个沙盒式macOS应用程序,它们像“服务器”和“客户端”一样运行,其中一个在后台运行,具有权威的逻辑和数据,另一个在前台暂时运行,具有虚拟视图询问后台应用程序应该做什么。

迄今为止最有希望的前景是DistributedNotificationCenter,但当我看到the documentation for posting a notification说:{/ p>时,我感到很沮丧。

  

重要

     

沙盒应用只有在不包含字典时才能发送通知。如果发送应用程序位于App Sandbox中,则userInfo 必须nil

因此DistributedNotificationCenter似乎只能用于跨进程发送通知的名称。多么令人失望!它 说了一些关于notificationInfo词典的内容,但没有说明如何设置或使用它,所以我认为这是一个错误的意思是userInfo

与其声明相符,即使我将com.apple.security.application-groups权利添加到两个具有相同值的应用中,当我尝试使用postNotificationName词典调用userInfo时,它也会失败,将以下内容打印到控制台:

2017-07-26 11:45:44.168865-0400 Foreground App[49005:1967499] *** attempt to post distributed notification 'me.benleggiero.incomingBackgroundServerRequest' thwarted by sandboxing.

是否有Cocoa方式可以在应用之间发送任意数据?它不一定非必要安全;我可以独立确保。我只是想避免设置套接字和其他类似的东西。

0 个答案:

没有答案