因为公司产品需要,要写一个demo,演示iphone与硬件通过蓝牙通讯,传输数据包,折腾好久,终于折腾了出来了。分享一下实现的过程。
首先,要拿到苹果公司的MFI认证,然后要定义至少一种命令协议,让配件支持,Apple 并不负责提供协议的注册机制,制造商必须自己决定支持哪些协议,为了防止命名冲
突,协议的名字是反向的 DNS 字符串,类似com.apple.myProtocol。
定义好协议后,要在工程中声明协议,在Info.plist的UISupportedExternalAccessoryProtocols键中声明。
工程里要添加ExternalAccessory 框架。
通过EAAccessoryManager获取配件列表,通过EAAccessory与配件建立连接,就可以创建一个EASession回话,与配件进行通讯。
具体的可以参照苹果官方文档http://www.apple.com.cn/developer/library/ios/featuredarticles/ExternalAccessoryPT/Introduction/Introduction.html。
详细代码参照官方EADemo实例,里面实现的很清楚。

本文介绍了如何在获得苹果MFI认证后,使用iPhone通过蓝牙与硬件设备通信并传输图片数据包。首先,定义一个反向DNS字符串协议,并在工程中引入ExternalAccessory框架。接着,利用EAAccessoryManager建立连接,提取图片原始数据并压缩以提高传输效率。每段数据包附带文件头和段头,并根据硬件响应进行分段发送。若1秒内未收到响应,传输将终止。
最低0.47元/天 解锁文章
1004

被折叠的 条评论
为什么被折叠?



