iBeacons - 公司(Estimote,Gimbal等)SDKs与Android/iOS库

mas*_*rur 7 android bluetooth ios ibeacon ibeacon-android

我一直在用他们的Android SDK玩Estimote iBeacons.但是,我仍然对为什么有这么多SDK可用而感到困惑.

iBeacons只是标准的蓝牙设备,具有蓝牙低功耗(BLE)蓝牙4.0规范的一部分.只要您拥有"Bluetooth Smart Ready"设备(iPhone 4S +和Android 4.3+),您就能够检测到所有iBeacons,无论信标制造商如何.Android(蓝牙低功耗连接)和iPhone(iOS开发者库)都提供系统级库来开发应用程序以使用iBeacons.

那么为什么有这么多的SDK用于连接到iBeacons(Gimbal,Estimote,Radius Networks,开源Android API).

所以我有几个问题:

  • 为什么有这么多SDK可用?制造商可以锁定他们的信标只能通过他们的SDK访问吗?

  • 在可Android 4.3的蓝牙连接库调查,并找到任何iBeacon显示?

  • 使用非Android SDK有什么好处?在我看来,只有android库可以实现地理围栏和接近检测,但通知和持续的背景轮询是不可能的.

dav*_*ung 13

了解Beacons是Bluetooth LE的特定应用.蓝牙LE是一种通用的短距离通信技术,可以执行许多操作,例如将音频传输到扬声器.

Android内置蓝牙API和Apple API等低级API CoreBluetooth适用于通用蓝牙应用.他们不做灯塔特定的事情,如:

  • 解码信标标识符
  • 估计信标的距离
  • 确定信标何时出现和消失
  • 启动应用程序或发送信标检测通知

为了完成这些任务,您需要编写自己的软件(这很容易出错并且非常耗时),或者使用预先构建的更高级别的库.对于iOS设备,Apple具有内置于操作系统和CoreLocationAPI的信标功能.Android没有这样的内置库.

由于Android没有内置信标库,因此不同的第三方已经构建了它们.我公司于2013年9月成为第一家,现已发展成今天的开源Android Beacon Library.

其他销售信标的公司通常会创建自己的库(有些是基于这个开源库,有些则不是),以支持其信标或基于它们的专有云服务的专有功能.

所以你最后两个问题的答案是:

  • 是的,Android 4.3蓝牙连接库可以轮询并查找任何iBeacon,但您必须在该库之上编写大量代码才能实现.

  • 使用附加库的优点是您不必编写和调试所有代码.您可以专注于需要进入应用程序的逻辑,而不是将所有时间都花在低级信标处理上.

完全披露:我是Radius Networks的总工程师和Android Beacon Library的作者.