带有 MOKOSmart SDK 的 iBeacon Android
苹果公司基于低功耗蓝牙(Bluetooth Low Energy)开发的iBeacon 协议已被多种设备支持。本文将介绍 iBeacon 和低功耗蓝牙,并以开发一款基于位置信息的购物清单 Android 应用为例,展示 iBeacon Android 应用如何实现基于位置信息的交互。该实现基于 MokoBeacon 及其配套 SDK。
iBeacon、蓝牙 4.0、BLE、SMART。什么?
iBeacon 的基础技术是蓝牙。低功耗蓝牙 (BLE),通常被称为蓝牙智能营销标签,已包含在蓝牙标准 4.0 版本中。BLE 不向后兼容先前称为经典蓝牙的版本。蓝牙 4.0 规定,符合标准的设备必须实现低功耗蓝牙或经典蓝牙中的一种或两种变体。
几乎所有当前的智能手机都支持 BLE,例如 iPhone 4+ 和三星 Galaxy 3+。iPhone 既可以接收 iBeacon 信号,也可以(与 Android 的 iBeacon 不同)直接作为信标使用。Android 从 API 版本 18(即 Android 4.3)开始包含 BLE 驱动程序。顺便提一下,当前的计算机也支持 BLE。然而,在 Windows 系统中,驱动程序从 Windows 8 开始内置,并且自 2011 年中期左右起,BLE 便已在 Apple 计算机上可用。
BLE 继续支持各种外围设备,例如心率监测器和玩具直升机、温度计、健身器材和牙刷,是的,牙刷和运动鞋。
iOS 和 Android 上首批 iBeacon 应用
iOS 7 目前为开发者集成 iBeacon 到应用中提供了最佳的先决条件。从 iOS 7 开始,即使应用已注册 iBeacon 或信号丢失,操作系统也会启动已从内存中移除的应用。注册过程通过核心位置框架进行,比核心蓝牙更易于使用。最著名的 Android 和 iOS iBeacon 应用是 MokoBeacon。它会在选定事件发生时采取行动。例如,它会在您回家时创建一个日历条目。
Android 出厂时不支持 iBeacon。多家第三方供应商正在竞相推出解决方案,以吸引开发者的青睐,其中包括 Radius Networks 和 Sensorberg。免费的 Radius Networks 解决方案包含一个程序库,Android 会提供该程序库,其中包含 iBeacon 服务和必要的 API。
Sensorberg 依靠由硬件、软件开发套件和软件组成的完整套件来管理 iBeacon、应用内容和用户交互。例如,Sensorberg 解决方案就已应用于 2014 年 Cebit 展会的应用中,该应用支持 iBeacon Android 和 iBeacon iOS 系统。该应用可在智能手机上提供特定展会地点的培训、实习和工作机会。
信息质量和数据保护对于成功至关重要
从消费者角度来看,iBeacon 引发了人们对智能手机充斥广告、侵入式个性化客户体验的担忧,就像电影《少数派报告》中那样。其中一些担忧并非毫无道理,正如 iBeacon 安卓功能(它不可避免地成为了一个参考)所表明的那样。iBeacon 采用的是选择加入模式。只有安装 iBeacon 应用后,您才能成为用户;其他智能手机用户则无需担心。
iOS 系统也只会谨慎地显示 iBeacon 触发的信息。当用户在 Beacon 覆盖范围内打开智能手机时,信息就会显示;当用户离开 Beacon 时,信息就会消失。这样就不会受到蜂鸣声和振动的干扰,甚至不会像逛商场后信息中心爆满的情况。
用户何时觉得 iBeacon 应用有用,何时觉得它烦人,很大程度上决定了其提供的信息和功能的质量。Oelling 解释说:“是位置服务,而不是位置营销。” 因此,只有实用的应用程序才能成功。烦人的应用程序会被淘汰,剩下的就交给负面评论。
我可以用 iBeacon android 做什么?
例如,iBeacon 可用于识别特定位置,例如“工作”或“家”。然后,智能手机即可触发预定义的操作。例如,当用户离开或进入家时,WLAN 可以自动开启或关闭。
各种应用程序也可以基于 GPS 数据或手机信号塔来实现这些功能,但这两种方案都有缺点。GPS 追踪耗电很大,而且在建筑物内无法使用。使用手机信号塔的定位也不太准确。在农村地区,信号塔的可见范围可能在几公里之外。而使用 iBeacons,可见范围只有几米。它甚至可以用来识别房屋内的各个房间。作为最后的选择,WLAN 仍然可用,因为它也会定期广播其 SSID。不幸的是,这种方法会失败,因为手机会关闭 WLAN 硬件以节省电量,但不会关闭蓝牙接收器。
配置 MkiBeacon 参数
本文使用 MkiBeacon。iBeacon 只需插入任意 USB 端口即可。无需 PC,只需电压即可。
智能手机上安装了以下应用程序用于配置:
启动应用后,所有 iBeacon 都会显示在附近。如果有多个 iBeacon,则很可能显示距离最近的那个。点击你自己的 iBeacon 后,配置视图会打开:
![]()
可以调整以下设置:
UUID:
iBeacon 的实际 ID。例如,实际上所有 Vodafone Beacon 都具有相同的 UUID。这样,应用程序就无需维护有效 Beacon 列表。例如,可以通过 major 和 minor 来识别商店。

主修/辅修:
这个想法是让所有商店都拥有相同的 UUID。Major 可以用来识别部门(例如电子产品、服装、熟食等等)。Minor 可以用来识别货架(例如“电子产品”部门的“键盘”货架)。

传输距离:

传输功率:
此处传输强度可设置 7 个等级。建议先尝试一下。当然,距离是估算值。

广播间隔:
指示 iBeacon 发送其 ID 的频率。在本例中,1 表示 100 毫秒。

序列号:
序列号。可调整。

iBeacon名称:
名称和序列号共同构成了 iBeacon 的识别名称。但 UUID 更为重要。

连接方式:
这可以阻止您更改设置。如果值为 1,则表示您已锁定自己,但信标仍会继续工作。

更改密码:
可以在这里设置密码。

重启 iBeacon:
更改设置后,必须重新启动 iBeacon。此时需要输入旧密码。
更改值后,点击右上角的“保存”。我通常需要大约 1 秒钟,尽管更改尚未传输到 iBeacon。所有更改完成后,点击“重启 iBeacon”会打开以下对话框:
![]()
这一步很重要,否则更改将不被接受。我不知道这是什么意思,但我还是贴出来了。第一次必须在这里输入 Moko4321 出厂时设置的密码。否则,整个过程会失败,没有任何错误信息 🙁 当然,第二次会使用你自己的密码。
IBeacon 技术提供了一种在手机上触发位置相关操作的理想方式。由于成本低且能耗低,因此可以毫无问题地使用多个信标。由于信标可区分三个距离范围,因此即使智能手机直接位于信标旁边(例如在床上),也可以触发操作。
虽然这款应用略显简陋,但信标还是给人留下了不错的印象。应用运行良好,初始设置只需一次。根据具体应用,可能需要在开始时调整发射功率。
在家的话,我会选择非电池供电的解决方案,因为它们不需要节省电池,因此覆盖范围的问题更少。如果你想在进入森林后自动将手机静音,当然应该使用电池供电的设备。这些设备的使用寿命通常超过一年。
iBeacon 技术:微定位智能手机和平板电脑应用程序
顾名思义,iBeacon 技术由苹果公司于 2013 年推出。Beacon 是一种小型无线电发射器,可以安装在商店或博物馆等场所,向顾客或访客发送特定信息。这项技术采用了低功耗蓝牙 (BLE)。这并非一项新技术,例如脉搏手表就已采用。然而,无线电发射器的覆盖范围有限。此外,Beacon 不包含任何其他移动设备或用户能够识别甚至监控的技术。此外,还需要一个支持 iBeacon 的应用程序。如果移动设备上未安装支持该技术的应用程序,智能手机等设备将无法对商店中安装的 iBeacon 做出反应。
iBeacons/beacon 的工作原理
如果安装了相应的应用程序,并且设备靠近信标,系统就会激活该应用程序。为此,应用程序会接收来自信标的信号,从而知道附近有一个特定的 iBeacon。具体操作会有所不同,具体取决于应用程序和运营商。例如,在某些情况下,只显示一条消息,而在其他情况下,则会显示其他优惠或优惠券。每个 iBeacon 都有一个特定的标识符,在技术术语中也称为 UUID(通用唯一标识符)。借助此标识符,应用程序还可以通过互联网搜索更多信息并将其显示给用户。
然而,这些应用程序不仅可以识别附近的信标,还可以确定它们与相应手持设备的距离。有三种不同的距离:
1. 远(距离“远”)
这意味着距离约为2米至20米。例如,附近商店的信息会发送到智能手机。
2. 近(距离“近”)
这里的距离大约是0.5米到2米。例如,如果你进入一家商店,应用程序会向用户表示欢迎。
3. 直接(距离“立即”)
这意味着直接接近。例如,如果用户正站在博物馆的一幅画作前,该应用程序可以提供有关该艺术品的具体信息。
另外必须要说的是,距离的测定已经比较好了,但还不够精确,准确位置可能和准确位置有几米的偏差。
iBeacons = Apple – 有什么可比性适用于 iBeacon android 吗?
如前所述,Apple 推出了 iBeacon。对于开发者来说,iOS 8 是将 iBeacon 集成到应用中的最佳环境。iBeacon 也可以在 Android 设备上使用。然而,这并非天方夜谭。目前,已有多家供应商为此提供了不同的解决方案。
例如,Radius Networks 就提供了一个著名的免费解决方案。它提供了一个程序库,包含使用 iBeacon 所需的 API 和 iBeacon 服务。
Sensorberg 提出了另一种解决方案。该方案包含硬件、软件开发套件以及用于管理 iBeacon、应用内容和用户交互的软件,涵盖了实施所需的一切。
然而,必须确保智能手机或平板电脑支持BLE技术并配备兼容芯片。苹果从iPhone 4S开始就已保证支持BLE。但许多安卓设备已经搭载了这种芯片,例如HTC One、谷歌Nexus 4、5、7和10,以及三星Galaxy S3及以上版本的智能手机。
然而,不仅硬件至关重要,软件也同样重要。iOS 5 及以上版本支持 BLE。而 Android 4.3 及以上版本才支持 BLE。如果硬件正确,但软件不正确,可以使用自定义 ROM 等解决方案来升级智能手机或平板电脑。














