第一关内执行外部应用程序,让我清楚,我需要它不简单(显然我要的是不只是执行另一个应用程序)。从Cocoa应用程序
我需要:
- 扩展我的主要应用与外部应用程序(“插件”的排序)功能
- 这些外部插件必须从主应用程序分开(在条件的代码/实现)
- 外部插件必须能够无缝集成到主应用程序
- 外部应用程序应该而不是被用户看作是“外部”东西
- 执行必须遵守App Store条款和SandBoxing指南。
例(虽然这个想法在我的脑海不是100%清晰):
- 主机应用程序启动
- 外部应用程序有一个窗口(和它自己的功能)
- 一旦执行了外部应用程序,它的窗口现在变成了主机应用程序的“表单”
我不知道我所描述的是甚至可行的。不过,我仍然需要听取您的意见。我已经做了很多关于此事的研究,尽管我将基于使外部脚本可扩展主机应用程序的基本概念(获得输入并提供一些输出 - 通过php,python,AppleScript,任何.. ),这并不包括“插件”具有自己的用户界面的情况。
那么,有什么想法? (一个例子或某些特定的参考点我将是理想的...)
是关于OS X或iOS应用程序的问题吗? – 2013-02-24 16:00:14
@MartinR OSX ... – 2013-02-24 16:24:02
我假设你可以使用[Bundles](https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/LoadingCode/Tasks/LoadingBundles.html)。加载后,它们将在主应用程序上下文中执行,因此可以使用UI。我不认为这是一个沙盒问题,因为所有的捆绑包都会被签名并包含在主应用程序包中,但我无法给出一个权威的答案。如果你想特权分离,看看“XPC服务”,但这些没有(据我所知)访问用户界面。 – 2013-02-24 16:46:01