用于果冻豆的蓝牙低能量API 4.2

时间:2013-12-02 15:50:49

标签: android android-4.2-jelly-bean bluetooth-lowenergy broadcom

经过几个小时的关于BLE主题和android的研究,我发现的唯一一件事就是乱七八糟。 开发一个使用BLE的iOS应用程序非常简单 - 一个框架和一些文档。 现在,我必须为Android Jelly Bean 4.2.2编写一个应用程序(该应用程序只能在一台设备上运行,目前只有4.2.2),它必须发现并连接到BLE设备。

我发现,直到4.1,android上的蓝牙堆栈称为BlueZ,但是4.2谷歌从Broadcom改为堆栈。我知道在4.3中有官方内置支持蓝牙低功耗的Android,但该应用程序必须在4.2.2下运行。

经过大量研究,我没有找到任何有关Broadcom堆栈的文档。有人可以指向我一个链接(仍然有效,但不会以303错误结束)?堆栈是否具有BLE支持,是否有人知道该教程或可以提供几行示例代码?

非常感谢您的任何投入! 我真是迷失在那混乱中

Linard

2 个答案:

答案 0 :(得分:11)

经过3/4年的时间和许多观点,我想自己回答这个问题:

我们与中国制造商交谈,但他们无法向我们提供JB 4.3的发布日期(目前看来需要进行硬件升级)。因此我们搜索了另一个解决方案,我们发现了一个 BlueKitchen GmbH(http://bluekitchen-gmbh.com)是一家开发BTStack的小公司,这是一款用于越狱iOS设备和嵌入式系统的开源蓝牙堆栈,它已经修改了现有的堆栈,使其与我们特定的Android设备兼容。 参与解决方案的工作是使设备生根,用我们的自定义设备替换原始蓝牙堆栈,取消设备,然后将其运送给我们的客户。 由于堆栈作为独立于应用程序的系统服务运行,因此应用程序不需要任何root权限,并且可以通过Google Play商店或ADB控制台轻松安装和更新,而无需生根。 应用程序通过套接字连接与堆栈通信,因此可以使用纯Java代码。在应用程序内部,必须区分自定义堆栈和运行JB 4.3+的设备与本机BLE堆栈。但是因为BLE协议规定了API,所以一切都非常相似。

如果您对iSafe Innovation 2.0或Ruggear RG220设备的堆栈版本感兴趣,或者如果您想要其他Android设备的堆栈(请使用),请随时向我询问应用程序中该堆栈的实现情况并联系BlueKitchen BLE芯片)

我希望你也能找到解决方案

Linard

答案 1 :(得分:1)

您可以使用三星BLE SDK,现已弃用AFAIK。如果我记得,它使用的是TI或Broadcom。当然,这只适用于某些三星设备。

我为BLE编写了一个包装器,它根据可用性在三星的SDK和4.3 +的SDK之间切换,但它是针对客户端的,所以我不能不幸地发布它。