2012-06-26 23 views
5

试图让我的应用程序可与沙箱我会卡在这个问题:沙箱,登录项目和启动应用

我需要增加我的应用程序登录的项目,所以我已经按照下列步骤操作:

  • 在开放EXEC创建HelperApp.app(与is agent = YES),此代码:

    的NSString * APPPATH = @ “/应用/ MyNewApp.app”; [[NSWorkspace sharedWorkspace] launchApplication:appPath]; [NSApp终止:无];

    这个程序是沙盒。

  • 我加了一个副本构建阶段我MyNewApp.app同捆子路径Contents/Library/LoginItems和目的地wrapper

    而且显然也是MyNewApp.app是沙箱

  • MyNewApp.app我用SMLoginItemSetEnabled注册的捆绑ID HelperApp.app

现在所有工作正常,但...当MyNewApp.app尝试启动MyNewApp.app我得到一个错误:

LSOpenFromURLSpec() returned -10827 for application /Applications/MyNewApp.app path (null). 

但是,如果我尝试使用HelperApp.app推出没有沙箱(即Steam.app)应用程序就像一个魅力!

是否有另一种方式来启动应用程序?可能NSWorkSpace与沙盒上下文中不允许的函数一起使用。你有什么建议?

回答

4

你可能想看看我的教程how to get launch at login working in the sandbox

+0

不错的教程!但我不明白为什么它可以工作,如果我用2个项目创建一个工作区,并且如果我使用2个不同的项目,并且我通过复制捆绑软件复制帮助程序应用程序不起作用。 – MatterGoal

+0

好问题。我必须承认,我手边没有答案,我通过试验和错误找到了工作解决方案。 – Tim

+3

请将基本知识添加到您的答案中。当教程离线时,只有链接的答案就变成无用的。 – dandan78