Mac 沙盒和文件 ioctl
Posted
技术标签:
【中文标题】Mac 沙盒和文件 ioctl【英文标题】:Mac Sandbox & file-ioctl 【发布时间】:2012-05-07 12:09:17 【问题描述】:我目前正在对连接到 NeuroSky MindWave 耳机的程序进行沙盒处理;本质上是一种通过 USB 加密狗连接并在其间使用蓝牙的脑电波读取设备。
可以通过 /dev/tty.MindWave 套接字访问设备。
我添加了对文件的读取权限的临时权利:
<key>com.apple.security.temporary-exception.files.absolute-path.read-write</key>
<array>
<string>/dev/tty.MindWave</string>
</array>
这消除了文件的沙盒错误消息,但现在出现以下错误:
deny file-ioctl /dev/tty.MindWave
似乎没有匹配的临时授权。这意味着我必须尽快从 Mac App Store 版本中删除对该设备的支持。
然而,在这样做之前,我想我会发出一个 SOS,看看这个小组中是否有人有解决方案..
任何帮助将不胜感激。
最好的问候,
弗兰克
【问题讨论】:
【参考方案1】:此文档可能会有所帮助:
http://developer.apple.com/library/ios/#DOCUMENTATION/Miscellaneous/Reference/EntitlementKeyReference/EnablingAppSandbox/EnablingAppSandbox.html
看起来您需要的授权密钥是:
com.apple.security.device.usb
我感受到了你的痛苦:我正在与沙盒中的登录项搏斗,而我才刚刚走到一条长隧道的尽头!
希望它有所帮助,并且该设备听起来很棒 - 听说过这样的事情,但没有意识到它们是公开的!
托德
【讨论】:
感谢您的建议。我相当肯定我尝试了 com.apple.security.device.usb 权利,但它没有用。 Neurosky 与您的应用程序捆绑的可可插件实际上并不直接与设备对话,而是与作为单独进程运行的守护进程对话。我会再试一次以防万一,因为我对他们的设备驱动程序的工作原理知之甚少:-) 啊,一个守护进程。这在沙盒中可能会出现问题。确保它也是沙盒和代码签名的。它也可能需要放在特定位置。看看delitestudio.com/2011/10/25/…,它可能在这里有用....以上是关于Mac 沙盒和文件 ioctl的主要内容,如果未能解决你的问题,请参考以下文章