我们在IDE上工作了很长时间,它有com.apple.security.app-sandbox模式。用户可以从互联网(开箱即用)下载必备的SDK,并在我们的IDE中用于开发。在使用这些SDK文件之前,我们很多时候注意到文件都有隔离属性(com.apple.quarantine)。由于其更严格的限制政策,这些文件被禁止在El Capitan的沙盒应用程序内使用。为了克服这种阻塞,我们决定在IDE中使用这些SDK文件之前运行一个bash脚本:
#!/bin/bash
SDKPATH=$1
xattr -d -r com.apple.quarantine "$1"
为了顺利运行,我们在应用中添加了以下权利:
<key>com.apple.security.scripting-targets</key>
<dict>
<key>com.apple.Terminal</key>
<array/>
</dict>
从已安装的应用程序中,这在El Cap中从未奏效。最后,我们发现这种特定的权利用法只能使bash脚本正常工作:
<key>com.apple.security.temporary-exception.apple-events</key>
<array>
<key>com.apple.terminal</key>
</array>
不幸的是,Apple审核小组对上述权利的使用权限非常严格。
是否有任何其他已知的方式或权利使用可以使我们运行&#39; xattr&#39;命令并从我们的应用程序中删除扩展属性?