如何在一个捆绑中创建少量应用?

时间:2015-06-21 20:44:03

标签: objective-c macos cocoa

我有一个作为代理运行的应用程序,并在顶部栏中有图标。它应该能够在停靠栏中运行另一个带窗口和图标的应用程序。两者都应该共享相同的核心数据。有办法吗?如何从另一个开放一个应用程序?谢谢。

1 个答案:

答案 0 :(得分:2)

创建一个新的cocoa应用程序目标,然后添加将您的子项目目标嵌入主应用程序包的Copy Files构建阶段: enter image description here

使用NSTask类启动嵌入式二进制文件,代码如下:

NSString *executablesPath = [[[NSBundle mainBundle] executablePath] stringByDeletingLastPathComponent];
NSBundle *subProjBundle = [NSBundle bundleWithPath:[executablesPath stringByAppendingPathComponent:@"subproject.app"]];
NSTask *subBinaryTask = [[NSTask alloc] init];
subBinaryTask.launchPath = [subProjBundle executablePath];
[subBinaryTask launch];