Bluetooth OBEX&PBAP分析 (1)-协议

OBEX 交互

交互协议格式

在这里插入图片描述

opcode (1 Byte)

PBAP 支持的操作如下:
Bluetooth OBEX&PBAP分析 (1)-协议_第1张图片
其对应的值如下:
Bluetooth OBEX&PBAP分析 (1)-协议_第2张图片

Length (2 Bytes)

长度,感觉不需要多余的解释

Headers

这个比较重要,一条交互协议可能包含多个header。

Bluetooth OBEX&PBAP分析 (1)-协议_第3张图片
Bluetooth OBEX&PBAP分析 (1)-协议_第4张图片
表示基于OBEX的上层应用协议在请求或响应包中传递的附加信息,也是由一系列连续的Tag-Length-Value构造组成:
Tag-Length-Value
支持的属性header
Bluetooth OBEX&PBAP分析 (1)-协议_第5张图片

其中PropertySelector64位的数据组成,所以每一位都代表了一种属性,如果PCE请求的电话簿需要包含对应的数据,就将该数据对应在PropertySelector的二进制位设置为true(1)。具体每一位的含义见下图:
Bluetooth OBEX&PBAP分析 (1)-协议_第6张图片

三种常见Opcode

Connect

Bluetooth OBEX&PBAP分析 (1)-协议_第7张图片

  • OBEX version number:已编码的OBEX协议版本,当前默认为1.0,这个和OBEX协议没有必然相同的关系。
  • flags:连接的标志,默认为 0。
  • maximum OBEX packet length:OBEX数据传输的最大包长,连接两方协议确定。
Frontline 截图
  • request
    Bluetooth OBEX&PBAP分析 (1)-协议_第8张图片
  • response
    Bluetooth OBEX&PBAP分析 (1)-协议_第9张图片

Get

Bluetooth OBEX&PBAP分析 (1)-协议_第10张图片

Frontline 截图
  • Request
    Bluetooth OBEX&PBAP分析 (1)-协议_第11张图片

  • Response
    Bluetooth OBEX&PBAP分析 (1)-协议_第12张图片

Disconnect

Bluetooth OBEX&PBAP分析 (1)-协议_第13张图片

你可能感兴趣的:(Bluetooth,stack)