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

时间:2014-10-01 19:52:28

标签: android ios bluetooth ibeacon ibeacon-android

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

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

那么为什么有这么多用于连接iBeacons的SDK(Gimbal,Estimote,Radius Networks,open source Android API)。

所以我有几个问题:

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

  • Android 4.3 Bluetooth Connectivity library可以查询并查找任何iBeacon吗?

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

1 个答案:

答案 0 :(得分:13)

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

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

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

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

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

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

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

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

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

完全披露:我是Radius Networks的总工程师,也是Android Beacon Library的作者。