将iOS外部附件框架代码转换为Android

时间:2014-03-19 06:52:03

标签: android ios bluetooth external-accessory

我们获得了一个蓝牙设备,我们被要求将iOS和Android设备连接到特定的自定义外围设备。

演示应用程序似乎会显示一个设备列表,询问使用哪个设备,然后显示一个协议列表,其中包括在"支持的外部附件协议"下的info.plist中定义的协议。 as com。(公司).bt。

我全神贯注地发现这个过程与蓝牙标准无关,整个工作流程在Android上似乎有所不同。我已经尝试使用蓝牙示例应用程序连接到此设备,但红色连接的LED从不亮,并且根据给定的UUID,我要么接收1个字节或7个。我给出的示例代码不是'甚至触摸InputStream,除非流已达到16个字节(当然,从未发生)

是否有某种关于如何连接此设备的指南?根据我从代码中读到的内容,在用户按下按钮之前,甚至不会发送消息,但LED在iOS之前甚至是一个选项之前很久就会点亮。

编辑:我终于找到了点击的东西 - 似乎plist条目与mfi有关(我猜文档只适用于程序中的人?) ,这是否意味着此设备仅适用于iOS设备?

1 个答案:

答案 0 :(得分:0)

如前所述,Android和iOS的连接方式不同。

info.plist中定义的协议应该是您要与特定蓝牙芯片一起使用的协议。

有一个指南解释如何在iOS中连接,你应该也检查它是哪个蓝牙版本。如果它低于蓝牙4.0(BLE-蓝牙低功耗)。我认为它不是BLE,因为你提到它是MFI ......

1)如果是BLE,请使用Core Bluetooth

2)否则请查看以下链接:Introduction to Stream Programming Guide for Cocoa

我们有点难以理解您对红色LED的意思,因为我们不知道您使用的是什么设备。考虑到您从设备接收了一些字节,这意味着通信已建立。您可以通过将代码更改为" touch"来开始调试并更好地理解代码。即使收到1个字节,也会输入InputStream ...

希望这会有所帮助。 干杯!

编辑:再次阅读标题,我不确定你想要将代码转换为Android是什么意思?您只描述了在iOS中连接的尝试。 快速Google搜索会为您提供以下Android指南链接:

1)Bluetooth (not BLE)

2)BLE