芯方式

无来电铃声

0
阅读(948)

[DESCRIPTION]
SP来电,BT Dialer无来电铃声
[SOLUTION]来自半导体社区
一部分SP会在来电的时候,尝试通过A2DP播放铃声,收到A2DP_START_STREAM之后会将本地铃声停止。Solution: 对此
种情况做特殊处理,不停止本地铃声。
1. 请在/plutommi/Service/DialerSrv/BTDialerSrv.c文件中添加一个函数
/*************************************************************************
****
* FUNCTION
* srv_bt_dialer_get_call_setup_state
* DESCRIPTION
* PARAMETERS
*
* RETURNS
* void
**************************************************************************
***/
U8 srv_bt_dialer_get_call_setup_state()
{
return (g_bt_dialer_cntx->callsetup);
}
2. 请在/plutommi/Service/Inc/BTDialerSrvGprot.h文件中添加声明
U8 srv_bt_dialer_get_call_setup_state();
3. 请在/plutommi/Service/A2dpSrv/A2dpSrv.c文件srv_a2dp_start_stream_ind函
数中修改
1) 添加头文件#include "BTDialerSrvGprot.h"
2.)
void srv_a2dp_start_stream_ind(void *msg)
{
// ..........
srv_a2dp_stop_disc_timer();
#ifdef __BT_SPEAKER_SUPPORT__
if(av_bt_ctx.role == BT_A2DP_SINK)
{
if( (g_gsm_call_active > 0 )
#if defined(__MMI_VIDEO_RECORDER__) && !defined(__MMI_CAMCORDER__)
|| (mmi_vdorec_is_in_app() == MMI_TRUE)
#endif
#if defined(__MMI_VIDEO_PLAY_SUPPORT__)
|| (mmi_vdoply_is_in_app() == MMI_TRUE)
#endif
#if defined(__MMI_BT_DIALER_SUPPORT__) // 添加此处
|| (srv_bt_dialer_get_call_setup_state() == 1) // 添加此处
#endif // 添加此处
)
{
response = BT_A2DP_RESULT_OK;
av_bt_ctx.state = AV_BT_STATE_STREAMING;
bt_a2dp_send_stream_start_res(MOD_MMI, response, msg_p-
>stream_handle);
if (av_bt_ctx.state >= AV_BT_STATE_OPEN)
{
g_a2dp_streaming_suspended = MMI_TRUE;
g_app_callback(SRV_AVRCP_POP_PAUSE);
}
return;
}
}
#endif // __BT_SPEAKER_SUPPORT__
// .....
}