自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 BT Page timeout问题

最近做可穿戴设备遇到一个问题,可穿戴设备和手机进行连接时,容易出现Page timeout,导致连接不成功。这个问题我们需要知道在什么场景下会导致发生Page timeout。 首先我们需要知道BT的整个连接过程。主设备(master,即发起连接的设备)会寻呼(page)从设备(slave接收连接的设备),master会用跳频的方式去寻呼slave,slave会...

2019-03-28 18:11:58 2895

原创 蓝牙耳机按键在Android侧的处理流程

目前大多数音频视频设备采用红外遥控器,由于距离、角度、障碍物等的影响,红外遥控器的应用受到了很大限制。蓝牙无线通信技术可以实现传统红外遥控全部应用功能,而且客服了红外遥控器的局限性。蓝牙音频视频遥控应用框架(Audio Video Remote Control Profile,AVRCP)就是实现无线遥控功能的规范。 蓝牙耳机按键的处理在android层主要就是对BT的AVRCP pr

2017-03-09 15:27:14 6898 1

原创 HFP和HSP的区别

HFP(Hands-free Profile)和HSP(Headset Profile)都是为了实现蓝牙通话而制定,所实现的功能都和蓝牙通话相关。基本所有的蓝牙耳机、车载蓝牙都会支持这两个协议。HSP仅实现了最基本的通话操作:接听电话、挂断电话、调节音量、声音在手机/蓝牙耳机之间切换。HFP在功能上是对HSP的扩展,除了上述功能以外,还包括控制三方通话、来电拒接、耳机端来电显示等高级功能,

2017-03-08 16:15:43 16986 1

原创 蓝牙耳机Priority设置流程

当蓝牙耳机配对成功后,会发送一个BONDING_STATE_CHANGE的消息,在BondStateMachine状态机里会对这个消息进行处理,调用setProfilePriorty(dev)函数对当前的耳机进行优先级的设置,把以前的设置优先级顺序Hid、A2DP、Headset改为Headset、A2DP、Hid,请看这个函数修改后的具体code:private void setProf

2017-03-08 14:23:39 4146 1

原创 蓝牙耳机图标显示过程

蓝牙耳机图标显示代码路径在: frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/ 在PhoneStatusBarPolicy.java中的函数private final void updateBluetooth(Intent intent) { inti

2017-03-08 14:18:52 4842

原创 用蓝牙耳机拨打电话时的音频通路是如何切换的呢?

首先AP侧要在Modem(2G/3G/4G)、DSP和CP2(BT固件)之间建立通路连接,建立通路过程中AP侧通过AT命令(AT+SSAM)和Modem端进行音频通路选择的协商,之后,Modem端会告诉AP侧是否需要通过DSP来进行音频数据传输,这个时候Modem需要和AP侧进行通信,如果需要DSP的话,DSP要读取NV配置来设置DSP与CP2进行音频数据传输所需要的端口和总线的数据格式。DSP和

2017-03-08 11:07:04 7046

原创 蓝牙耳机拨打电话和VOIP通话两种方式对于上层来说创建SCO过程的区别

蓝牙耳机拨打电话和VOIP通话两种方式对于上层来说创建SCO的过程是不同的。    蓝牙耳机拨打电话是因为注册了函数handlePreciseCallStateChange(),当有CALL STATE状态发生改变时,就会调用BluetoothHeadset.java的phoneStateChanged()函数,在Headset 状态机里面调用processCallState()函数,通过调用

2017-03-08 09:57:49 4499 2

原创 Android4.4蓝牙耳机HFP流程分析-3

手机连接蓝牙耳机后,当手机的CALL STATE 发生改变时,会通过PhoneStateChanged和HFP Bluetooth Interface同步CALL STATE,然后发送相应的AT命令给蓝牙耳机。蓝牙耳机也可以发送AT命令给AG(语音网关)。然后通过JNI回调函数返回给上层,上层通过层层判断之后,会将相关信息传递到RILJ,然后封装好后使用AT指令的方式发送到Modem端执行相应

2017-03-07 18:20:21 4063 1

原创 Android4.4蓝牙耳机HFP流程分析-2

MO/MT在RILJ中执行流程

2017-03-07 18:17:46 1111

原创 Android4.4蓝牙耳机HFP流程分析-1

Android4.4 Phone状态分析

2017-03-07 17:59:42 1999 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除