androrid 蓝牙开发基础

来源:互联网 发布:变化中的中国网络零售 编辑:程序博客网 时间:2024/06/03 21:40

蓝牙分为传统蓝牙和低功耗蓝牙(Bluetooth Low Energy,简称BLE)     

传统蓝牙与低功耗蓝牙对比

对比方式

传统蓝牙

低功耗蓝牙

版本

   <3.0

    4.x以上

通信方式

Socket方式

Gatt协议

无线电频率

2.4GHz

2.4GHz

发送数据所需时间

100ms

<3ms

响应延时

100ms

6ms

能耗

100%(ref)

1%-5%

安全性

64/128-bit及用户自定义的应用层

128-bitAES及用户自定义的应用层


几个概念

BluetoothDevice
代表一个远程蓝牙设备。这个类可以让你连接所代表的蓝牙设备或者获取一些有关它的信息,例如它的名字,地址和绑定状态等等。

UUID

UUID 是通用唯一识别码(Universally Unique Identifier)的缩写,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的,标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12)

BluetoothAdapter

BluetoothAdapter类简单点来说就是代表了本设备(手机、电脑等)的蓝牙适配器对象,通过它我们可以蓝牙设备进行基本

发了,主要有如下功能:

             1、开关蓝牙设备

             2、扫描蓝牙设备

             3、设置/获取蓝牙状态信息,例如:蓝牙状态值、蓝牙Name、蓝牙Mac地址等;

BluetoothGatt
作为中央来使用和处理数据,这个类提供了 Bluetooth GATT 的基本功能。例如重新连接蓝牙设备,发现蓝牙设备的 Service 等等。

BluetoothGattService这一个类通过 BluetoothGatt.getService 获得,如果当前服务不可见那么将返回一个 null。这一个类对应上面说过的 Service。我们可以通过这个类的 getCharacteristic(UUID uuid) 进一步获取 Characteristic 实现蓝牙数据的双向传输。
BluetoothGattCharacteristic
这个类对应上面提到的 Characteristic。通过这个类定义需要往外围设备写入的数据和读取外围设备发送过来的数据。


原创粉丝点击