谷歌还没有意识到有时他们需要自己创建和驱动一些东西,而不仅仅是依托于开源项目并将其营销为自己的产品。
遗憾的是,目前Android上还没有标准化的BT 4.0低功耗API。也许谷歌只决定为Google Wallet选择NFC,然后任由BLE被淘汰。(我们真的需要两个都有!)
Broadcom曾试图制作一个开源API,但不知为何(可能是Broadcom想从中赚钱?),没有手机在其Android构建中包含“.so”文件,因此这个API是无用的。
TI和Motorola为运行在旧版Android 2.3.3或其他版本上RAZR系列制作了另一个API。这个实际上是可用的,但是Motorola从其网站上删除了文档和源代码。
HTC ONE X+以及更新的HTC手机将很快支持一种新的API,并配备特殊的HTC库,至少看起来他们正在做一些事情。
三星Galaxy S3有一些“秘密”API,一些人可以使用它发现设备、扫描服务和特征(在Galaxy S3上有一个名为“semilink Bluetooth Smart Scanner”的应用程序可以做到这些)。
谷歌要求Broadcom为Android 4.2制作Bluez的替代品。不幸的是,这个版本破坏了很多功能和外围设备的兼容性。也许是因为WiFi/GPS/蓝牙经典版/低功耗蓝牙共用相同的硬件资源,但驱动程序无法很好地处理。很多人在最新的Android蓝牙功能中遇到问题。
因此,我希望Broadcom集中精力解决混乱,然后与谷歌继续添加Bluetooth 4.0低能耗功能。谷歌已经说过“低功耗是我们将集成的下一个大事情”。至少迟了一年。
个人而言,我不得不购买iPhone4S和iPad retina,以获取支持低功耗的平台。通过它们,我们可以完成BLE外围设备软件并使协议工作。现在我们正在等待谷歌和Broadcom清理混乱。希望有一些向后兼容性,以便所有具有BT4.0芯片组的旧手机也能打开可爱的碰撞电池驱动外设的奇妙世界;-)(必须做梦)。
实际上,我们必须等待HTC发布其API,并等待谷歌选择/推动标准API。
Windows Phone 8本应该获得BLE,但已被推迟到更新中。(Lumia 920已获得认证,但没有API(再次!)我们开发人员是无助的。)
Windows 8和MAC“OS”x都有不错的GATT API。
你真的应该投资于TI BLE开发套件,这样的话只需要花费50-100美元就可以获得一个可用于BLE嗅探的USB插头。当你开发BLE外围设备软件时,它非常有用。