2014-07-25 43 views
1

我刚刚尝试将OSX应用程序转换为沙盒应用程序。该应用程序支持10.5以上,并具有手动内存管理。在转换之后,我通过在Xcode 4.3中运行它进行了测试。OS X应用程序测试沙盒侵犯

控制台现在不显示违规。是否足以断定该应用程序没有沙箱侵犯,或者在将应用程序提交给Mac App Store之前是否有任何其他流程来查找沙盒违规?另外,保留手动内存管理还是应该启用ARC?

谢谢。

回答

0

要检查应用程序二进制是沙箱:

codesign -dvvv --entitlements :- executable_path 

To observe sandbox violations during testing

  1. 打开控制台应用程序(在/ Applications/Utilities中/可用),并确保所有邮件被选中侧边栏。

  2. 在控制台窗口的筛选字段中,输入sandboxd以仅显示应用沙盒违例。

  3. sandboxd是报告沙盒违例的App Sandbox守护程序的名称。相关的消息,显示在控制台中,类似于以下内容:

sandboxd console logs

您还可以使用Xcode的组织者的验证向导无需提交应用程序的Mac应用程序执行App Store的验证检查商店。这可能会执行一些沙箱检查。

产品>归档>管理器>“验证...”

此外,有确定离开手动内存管理,因为它是,还是应该ARC必须启用?

是的,可以使用“手动保留释放”(MRR)而不是自动引用计数(ARC)来发布新应用程序,这很好。