如何在 iOS 5.0.1 中打开 Dock 连接器的串行端口

Posted

技术标签:

【中文标题】如何在 iOS 5.0.1 中打开 Dock 连接器的串行端口【英文标题】:How can i Open Serial Port of Dock connector in iOS 5.0.1 【发布时间】:2011-12-05 12:18:56 【问题描述】:

ios 5以下版本的iPhone/iPad可以成功打开串口。

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

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

(我使用Serial Programming 与配件和 iPhone 通信)

有没有人知道这个。

谢谢。

【问题讨论】:

这是在越狱设备上吗?在正常情况下,您不应从 iOS 应用程序的沙箱外部直接访问文件系统的 /dev 部分。 是它的越狱设备。但我无法在 iOS 5 中访问 /dev @Raj:你最终解决了这个问题吗?尝试在运行 iOS 5.0 的越狱 iPod Touch 上打开 /dev/tty.iap 时,我也收到“不允许操作”错误。 【参考方案1】:

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

【讨论】:

是的,请看第 42 页 antid0te.com/… 嗯,我不太了解(iOS 新手)...你能解释一下吗?【参考方案2】:

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

【讨论】:

【参考方案3】:

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

【讨论】:

以上是关于如何在 iOS 5.0.1 中打开 Dock 连接器的串行端口的主要内容,如果未能解决你的问题,请参考以下文章

如何从 MacOS Dock VSCODE 中删除打开的文件夹

如何在 Dock 中堆叠打开的文档(文本编辑)文件图标? [关闭]

devexpress如何往dockManager中的dockpanel添加上如vs2010中解决方案右上角的小三角按钮

如何在dock(Mac)中恢复图标? [关闭]

制作一个复选框来打开和关闭 Dock 图标

如何在 Mac 的 Dock 上对应用程序的多个窗口进行分组