如何在Xcode中在我的目标中构建和嵌入另一个应用程序?

如何在Xcode中在我的目标中构建和嵌入另一个应用程序?,xcode,macos,build,Xcode,Macos,Build,我的项目中有一个应用程序(名为App\u Main)。我想在App_Main的包中打包另一个微型应用程序(我们称之为App_tiny) 然后,我知道App_tiny的路径,当我需要时,我可以在App_Main的运行时以编程方式执行App_tiny 我怎样才能做到这一点?如何指定和构建另一个可执行目标,最重要的是,自动将App_Tiny放入App_Main的包目录中?要添加新目标,只需点击project explorer左侧窗格中的“new target”(新目标)按钮即可。Xcode将允许您在添

我的项目中有一个应用程序(名为App\u Main)。我想在App_Main的包中打包另一个微型应用程序(我们称之为App_tiny

然后,我知道App_tiny的路径,当我需要时,我可以在App_Main的运行时以编程方式执行App_tiny


我怎样才能做到这一点?如何指定和构建另一个可执行目标,最重要的是,自动将App_Tiny放入App_Main的包目录中?

要添加新目标,只需点击project explorer左侧窗格中的“new target”(新目标)按钮即可。Xcode将允许您在添加目标类型(应用程序)时选择它

接下来,您需要添加FooBarTiny作为主应用程序(FooBar)的构建依赖项。编辑主目标的方案,并将子目标作为显式依赖项添加

现在,当您构建FooBar时;如果需要的话,FooBarTiny将被建造

接下来,将FooBarTiny添加到“复制捆绑资源”阶段。点击add按钮并向下滚动树,您可以在Products文件夹中找到FooBarTiny

要从应用程序中启动FooBarTiny,您可以使用
NSWorkspace

-(NSRunningApplication*)启动应用程序url:(NSURL*)url选项:(NSWorkspaceLaunchOptions)选项配置:(NSDictionary*)配置错误:(NSError**)错误
可能是一个很好的起点。检查API文档中的其他变体

应用商店的额外费用


仅签署主应用程序是不够的。任何应用程序说明和子应用程序(FooBarTiny)也必须进行签名,否则您的应用程序将无法通过验证。这个答案与此无关,但这里有一个问题。

我无法单独指定“主界面”。如果我改变了FooBarTiny的主界面,FooBar的“主界面”也会改变。这使得其中一个应用程序无法工作。不太清楚你在说什么,但可能意味着你试图在两个目标中使用相同的文件。选择文件,然后按Cmd-alt-1打开目标浏览器。可能会在“目标成员资格”下为您的两个目标打勾。复制文件并为每个目标使用唯一的文件。请参阅。这标识了应用程序的主菜单,对吗?因此,如果有多个目标,当我更改其中一个目标的主菜单nib设置时,其他目标的设置也会更改。是。请参阅前面的评论。您可能正在使用两个目标的主菜单。不要。啊,“目标会员”!非常感谢。