BT_蓝牙电话数据包分析_拒接电话

基于Android P版本分析

通话过程协议分析

拒接电话

从AG端接听Incoming call的流程比较简单,其中包括了几个动作:来电、响铃和拒接,AG只是会通过+CIEV、RING和AT+CLCC等指令进行交互,其中通过+CIEV指令更新callsetup和call状态;

这个过程和接听来电的过程非常相似,他们之间唯一的差别在与:接听和拒接的区别,对应了两个AT+指令;

AG侧拒接和HF侧拒接基本相同;

中间和接听电话的逻辑一致,不做分析;

拒接
AT+CHUP

标准挂起AT命令,执行命令使AG终止当前活动的调用;

yaml 复制代码
Bluetooth HFP Profile
    [Role: HS - Headset (2)]
    AT Stream: AT+CHUP\r
    Command 0: +CHUP
        Command Line Prefix: AT
        Command: +CHUP (Call Hang-up)
        Type: Action Command (0x000d)
        Parameters: No

对应返回OK Response;

+CIEV: 2,0
yaml 复制代码
Bluetooth HFP Profile
    [Role: AG - Audio Gate (1)]
    AT Stream: \r\n+CIEV: 2,0\r\n
    Command 0: +CIEV
        Command: +CIEV (Indicator Events Reporting)
        Type: Response (0x003a)
        Parameters
            Indicator Index: 2
            Indicator 2: 0
  • callsetup = 0:代表了当前没在呼叫中,callsetup 状态从 1 -> 0,代表了从呼叫状态到结束呼叫状态的变化;
相关推荐
爱勇宝3 小时前
我做了一个只用来搜歌词的小 App
android·前端·后端
众少成多积小致巨6 小时前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++
Cerrda9 小时前
开发体验升级:UnoCSS 自定义 SVG 图标热更新方案
架构·前端框架
Coffeeee12 小时前
如何使用Glide和Coil加载WebP动图
android·kotlin·glide
Kstheme13 小时前
把任何 GitHub 仓库变成系统设计课:这个开源项目做到了
架构
Kapaseker13 小时前
5 分钟搞懂 Kotlin DSL
android·kotlin
禅思院13 小时前
路由性能高可用架构实战方案
前端·架构·前端框架
恋猫de小郭14 小时前
AI Agent 开发究竟是啥?如何用 AI 开发 Agent ?深入浅出给你一套概念
android·前端·ai编程
黄林晴14 小时前
Android 17 正式发布!target 37 一大批旧代码直接不能用了
android
Carson带你学Android14 小时前
Android 17 正式发布:AI 终于成了系统能力
android·前端·ai编程