HfpClient 通话未接听时有声音,在手机上接听后,状态机上没有声音

HfpClient 通话未接听时有声音,在手机上接听后,状态机上没有声音

在高通平台和三星平台上调过这个功能,基于安卓6.0,该功能是将手机上的蓝牙功能用成和蓝牙耳机一样的功能。蓝牙电话和蓝牙音乐它们之间的差异较大,蓝牙电话要求实时性比较高,其和A2DP使用的物理通路并不一致,蓝牙电话走pcm物理通路,而蓝牙音乐走uart通路。

关键词
Hfpclient   BT SCO   ATA command
在调试该功能时,最好能先测试一下,如下信号指标是否符合要求,以免带来卡顿和断连等不可靠因素

此外,还要测试频偏,其晶振以及外围的电容等器件也会影响,一般在正负10之内,否则也可能会导致卡顿或断连等现象。
开启HFP client支持
首先将hfp client角色功能打开。
packages/apps/Bluetooth/res/values/config.xml  
  
    false  
    true  

    首先将hfp client角色功能打开。

修改后以支持电话功能,但是手机连接后会断开,并有如下错误信息:
01-12 17:51:58.850  3319  3572 E bt_rfcomm: PORT_DataInd, p_port:0xe2ece48c, p_data_co_callback is null  
01-12 17:51:58.850  3319  3572 E bt_btif : HFPClient: Failed to create SLC due to AT error, disconnecting (2)