MFI 附件通过 USB 与 App 通信
Posted
技术标签:
【中文标题】MFI 附件通过 USB 与 App 通信【英文标题】:MFI Accessory communicate with App via USB 【发布时间】:2015-08-01 08:23:41 【问题描述】:如何与MFI Accessory通过USB通讯?
这就是我所拥有的。
我的MFI
附件,其他公司的MFI
附件和协议名称
EADemo(苹果官方配件演示)
这就是我所做的。
在 EADemo 的 EADemo-Info.plist 中将协议名称添加到Supported external accessory protocols
。
使用其他附件运行 EADemo,发送数据,receivedBytesLabel 的文本不断变化。
当我使用我的配件运行 EADemo 时,单击发送数据,UI 没有任何变化。
我的同事(硬件开发人员)说我应该在连接到配件后设置接口(如更改通信隧道),以便我可以与配件通信。但是我查看了 EASession 和 ExternalAccessory 文档,我找不到一些可以让我更改界面的方法。不知道是我没设置界面的问题,还是配件的问题?
我的应用如何与 MFI 配件通信?
【问题讨论】:
您是直接将设备连接到 Lightning 还是使用 Lightning 转 USB 数据线? 照明我认为。因为照明是集成在配件上的。 那么您的配件上有闪电连接器,为什么要提到 USB? 【参考方案1】:因为没有人经历过这种情况。我将解释如何以正常方式与MFI配件通信以及导致我出现这种情况的原因
通常如果您想使用 MFI 设备,您只需要执行以下步骤:
将 MFI 支持的协议添加到 Info.plist Supported external accessory protocols
。
将您的 MFI 配件连接到 ios 设备。
就是这样。您可以在屏幕上查看数据更改状态。
Note:
这些程序基于Apple官方项目EADemo
,您可以从官方网站下载。
这是我的经历:
MFI配件支持2种协议,一种是连接事件,另一种是数据交换(就像我同事之前说的,应该有2个接口)。但制造商没有给出具体文件。所以当我连接一个协议时,当然没有数据交换。所以我连接第一个协议,然后退后一步,连接到第二个。可以了,屏幕上有数据交换状态。
【讨论】:
您为一个配件创建了两个 EASession 对象? 嗨@ronan ..我处于同样的情况。我需要在我的 iOS 应用程序中通过 USB 访问我的 MFI 配件。目前我已经使用了 EADemo,我可以完全访问我的 MFI 配件。你能帮我解决这个问题吗? 好的。但我没听懂你在说什么。正如您所说,您已经可以访问该附件。以上是关于MFI 附件通过 USB 与 App 通信的主要内容,如果未能解决你的问题,请参考以下文章
iOS 外部附件框架:如何获取特定 MFI 设备的协议字符串
iOS 11.2.1 上的 EAAccessory 问题 外部附件未通过 Lightning 连接器将数据写入 MFi 设备