Mac OS应用程序权利阻止了互联网连接

时间:2013-05-19 22:57:37

标签: sandbox xcode4.6 entitlements code-signing-entitlements

我有一个需要传出连接的Mac OS应用程序。

我已按照Apple代码签名指南(Xcode 4.6.2)启用权利,我的目标摘要如下所示:

enter image description here

我的项目中有一个MYAPP.entitlements文件,如下所示:

enter image description here

似乎所有内容都以正确的方式设置,但是当我尝试运行我的应用时,即使

- (void)webView:(WebView *)sender didStartProvisionalLoadForFrame:(WebFrame *)frame

- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame 
调用

,我的webView中没有加载任何内容。 Nor Little Snitch要求连接。 然后,在控制台中没有出现违规行为。

如果我尝试更改“权利”设置,通过取消选中“允许传出连接”,控制台会以这种方式显示沙箱违规行为:

20/05/13 00:44:09,000 kernel[0]: Sandbox: sandboxd(908) deny mach-lookup com.apple.coresymbolicationd
20/05/13 00:44:10,593 sandboxd[908]: ([904]) MYAPP(904) deny mach-lookup com.apple.SystemConfiguration.SCNetworkReachability
20/05/13 00:44:10,601 sandboxd[908]: ([904]) MYAPP(904) deny system-socket

如果我删除启用应用程序沙盒,一切正常,我的webView加载其内容......

我试过了:

  1. 退出Xcode
  2. 重新启动计算机
  3. 以保存模式启动
  4. 启用权利
  5. 中的任意权限组合
  6. 创建新的MYAPP.entitlements文件
  7. 重命名我的目标
  8. 有人经历过这种行为吗? 任何建议都将非常感谢...谢谢。

1 个答案:

答案 0 :(得分:1)

好吧,我最终重新安装了我的整个系统,现在它可以工作......