13

我可以在低于 iOs 5 的版本中成功打开 iPhone/iPad 的串口。使用

open("/dev/tty.iap", O_RDWR | O_NOCTTY | O_ASYNC))

但我在 iOS 5 中收到错误“不允许操作”。

(我使用串行编程来通信配件和 iPhone)

有没有人对此有想法。

谢谢。

4

3 回答 3

2

由于它对我也不起作用,我认为 Apple 阻止了 iOS5+ 上的串行访问。Stefan Esser(推特上的@i0n1c)刚刚在一次安全会议上讨论了这个问题。我在等幻灯片,这样我们就知道连续剧发生了什么

于 2012-03-10T22:20:07.020 回答
0

我遇到了同样的错误,并且能够通过将应用程序放在 Cydia 应用程序所在的目录中而不是 Xcode 自动放置它的目录中来解决它(在此相关/相同帖子的第二个链接中找到此提示)。

于 2012-05-21T19:42:00.380 回答
0

不确定您是否可以正常工作,但是根据我的阅读内容,当您的应用程序位于沙箱中时,您无法访问 iPhone 的串行端口进行通信。沙箱是指当您在 Xcode 中单击“运行”并将您的应用程序传输到您的 iDevice 时,该应用程序将处于沙箱环境中。此环境禁止您的应用程序访问/dev/tty.iap坞站连接器中的串行端口等内容。我读过的一个解决方案是复制您的应用程序,它是指向应该将您的应用程序带出沙盒环境/Applications/的位置的链接,并授予它访问权限 让我知道这是否适合您,因为这是我最终将拥有的东西与我正在开发的应用程序有关。/var/stash/Applications.XXXXXX//dev/tty.iap

于 2012-07-19T23:01:40.547 回答