沙盒应用程序首次启动时崩溃

3

我刚刚更改了我的沙盒应用程序的包标识符,并运行它。在main()运行之前,我遇到了一个运行时异常。堆栈跟踪的顶部是runtime_init。我尝试在Xcode之外运行该应用程序,并获得了标准的崩溃报告对话框。浏览所呈现的信息时,我注意到:

Application Specific Information:
dyld: launch, running initializers
/usr/lib/libSystem.B.dylib
xpchelper reply message validation: sandbox creation failed: 1002
Container object initialization failed: The operation couldn’t be completed. (Cocoa error 13.)

只要我再次运行,就没有问题。我看到容器存在。但是,一旦我删除容器,异常就会再次抛出。我不希望我的用户在使用我的应用程序时遇到崩溃。我该如何解决这个问题?
我尝试修复权限,但没有任何改变。我还注意到,当Xcode在异常上中断时,容器已经被创建。此外,Craig Hockenberry在博客文章中提到了这个错误,但他指责用户主目录中的符号链接。我在那里没有任何符号链接(至少不在顶层,我认为他指的是这个)。 Twitter上的附加输入表明它可能是一个符号链接,任何地方都可以,在这种情况下,我肯定有一些。是否有人发现了解决方法?我想这将很困难,因为在异常出现之前没有任何应用程序代码执行。希望Mountain Lion会修复它...?
1个回答

1
最终通过清空桌面、文档、下载、电影和图片用户目录中的所有内容解决了这个崩溃问题。我认为这可能与其他帖子中提到的符号链接问题有关。

我理解这就是问题的根源,正如我在问题中所提到的。我正在寻找的解决方案是不需要用户手动清除其主文件夹中的任何符号链接。 - Dov
我会检查缺失的文件,然后提示用户查看在线支持文章或联系支持。在线文章描述了如何定位适当的容器目录并创建/移动必要的目录和文件。虽然不是最理想的解决方案,但目前为止还可以。 - greg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接