Android 平台蓝牙低功耗_1.基础知识

        Android 为发挥核心作用的蓝牙低功耗 (BLE) 提供内置平台支持,并提供一些 API,应用可使用这些 API 发现设备、查询服务和传输信息。

        常见用例包括:

  • 在临近设备间传输少量数据。
  • 与近程传感器交互,根据用户当前的位置为用户提供个性化体验。

        与传统蓝牙相比,BLE 旨在大幅降低功耗。这样一来,应用就可以与功率要求更严格的 BLE 设备(如近程传感器、心率监测器和健身设备)进行通信。

基础知识

        为了让支持 BLE 的设备在彼此之间传输数据,它们必须先形成通信通道。如需使用蓝牙 LE API,您需要在清单文件中声明多项权限。一旦您的应用获得使用蓝牙的权限,应用就需要访问 BluetoothAdapter 并确定设备是否支持蓝牙。如果蓝牙可用,设备将扫描附近的 BLE 设备。发现设备后,系统会连接到 BLE 设备上的 GATT 服务器来发现 BLE 设备的功能。建立连接后,可以根据可用的服务和特征通过已连接的设备传输数据

关键术语和概念

下面总结了关键的 BLE 术语和概念:

  • 通用属性配置文件 (GATT)

    GATT 配置文件是关于通过 BLE 链路发送和接收一小段数据(称为“属性”)的一般规范。当前的所有 BLE 应用配置文件都基于 GATT。

  • 配置文件

    Bluetooth SIG 为 BLE 设备定义了许多配置文件。配置文件是规定设备如何在特定应用中工作的规范。请注意,一个设备可以实现多个配置文件。例如,设备可能包含心率监测器和电池电量检测器。

  • 属性协议 (ATT)

    GATT 是基于属性协议 (ATT) 构建的。这也称为 GATT/ATT。ATT 经过优化,可在 BLE 设备上运行。为此,它会尽可能减少使用的字节数量。每个属性均由通用唯一标识符 (UUID) 进行唯一标识。UUID 是一种标准化的 128 位格式,用于对信息进行唯一标识的字符串 ID。由 ATT 传输的特性会采用“特征”和服务的格式。

  • 特征

    特征包含单个值和 0-n 个描述特征值的描述符。特征可以视为一种类型,类似于类。

  • 描述符

    描述符是描述特征值的属性。例如,描述符可以指定人类可读的说明、特征值的可接受范围或特定于特征值的计量单位。

  • 服务

    服务是一系列特征的集合。例如,您可以使用一项名为“心率监测器”的服务,其中包含“心率测量”等特征。

角色和职责

当设备与 BLE 设备交互时,需承担以下角色和责任:

  • 中央设备与外围设备。这适用于 BLE 连接本身。处于中心角色的设备会进行扫描并查找通告,处于外围设备角色的设备会发出通告。

  • GATT 服务器与 GATT 客户端。这决定了两台设备建立连接后如何相互通信。为了理解这种区别,请假设您有一部 Android 手机和一个属于 BLE 设备的 activity 跟踪器。手机支持中心角色;activity 跟踪器支持外围设备角色。要建立 BLE 连接,您需要各连接一个。仅支持外围设备的两个设备无法相互通信,仅支持中央设备的两个设备无法相互通信。

手机与 activity 跟踪器建立连接后,它们便开始将 GATT 元数据相互传输。根据它们传输的数据类型,其中一个可能会充当服务器。例如,如果活动跟踪器想要向手机报告传感器数据,则活动跟踪器可以充当服务器。如果 activity 跟踪器想要从手机接收更新,那么手机可以充当服务器。

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值