Android设备上的蓝牙被搜索到所显示的图标
Android设备上的蓝牙被搜索到所显示的图标
/system/bt/include/bt_target.h
#define BTA_DM_COD {0x5A, 0x02, 0x0C} // 手机端搜索到的蓝牙显示手机图标
#define BTA_DM_COD {0x5A, 0x04, 0x06} // 手机端搜索到的蓝牙显示带耳麦的耳机图标
#define BTA_DM_COD {0x5A, 0x04, 0x18} // 手机端搜索到的蓝牙显示不带耳麦的耳机图标
以下转自:https://blog.csdn.net/shichaog/article/details/53455169
蓝牙设备在扫描时会发现设备的类型,蓝牙图标有耳机,打印机,电话等等。
蓝牙协议栈里有一个叫做基带的字段。基带的分配编号指明查询访问码和设备/服务类别 (CoD) 字段。
通用及设备特定的查询访问码 (DIAC)
查询访问码 (IAC) 是寻找蓝牙设备和服务的第一个过滤层。定义多个 IAC 的主要目的是限制查看范围内的设备时响应的数量。
有限查询访问码 (LIAC) 仅用于限定的时段,在两边均已明确要进入此状态的情况下使用,通常由用户操作。有关 LIAC 使用的详细说明,请参考 。
相反,允许持续扫描通用查询访问码 (GIAC) 并在查询时响应。
设备/服务类别字段
设备/服务类别 (CoD) 字段的格式可以改变。格式通过 CoD 中的“格式类型字段”指明。格式类型字段的长度为变量,以不同于“11”的两位数结束。版本字段从 CoD 的最低有效位开始,并向上延伸。
在 CoD 的“format #1”(格式类型字段 = 00)中,11 位分配为位掩码(可以设定多个位),每个位对应于一个高级别的通用服务类别。目前 定义了七种类别。主要是“公共服务”属性。其余的 11 位用于指示设备类别和其他的设备特定特性。任何保留的但未分配的位,如在主要服务类字段中,应设为 0。
主要服务类
主要和次要服务类用于定义 Bluetooth SIG 成员希望与其应用程序相关联的设备通用系列。不应仅根据主要或次要设备类的分配而作出有关任何应用的特定功能或特性的假设。
主要设备类
主要设备类段是定义蓝牙设备的最高粒度级别。设备的主要功能决定了其主要类分组。有 32 种不同的主要类。此主要类字段的分配在表中进行了定义。
次要设备类字段
“次要设备类”字段(CoD 中的位 7 至 2)应仅在主要设备类(但独立于服务类字段)环境中解释。因此随着“主要设备类字段”值的变动,位的意义也会改变。当次要设备类字段指示设备类时,则应报告主要设备类,例如也可以用作无绳手持设备的手机应在次要设备类字段中使用“Cellular”。
次要设备类字段 - 计算机主要类
次设备类字段 - 电话主要类
次要设备类字段 – LAN/网络接入点主要类
精确的负载公式未标准化。依赖每个 LAN /网络接入点实施来确定报告为利用率百分比的内部条件。对数字仅有的要求是反应方格内通信资源持续增长的利用率。建议:定位多个 LAN/网络接入点的客户应尝试连接到报告最低负载的一个接入点。