From 0fc950ebc69673af2892b4b9c0d18ab6e7ad1e65 Mon Sep 17 00:00:00 2001 From: hcj <1224667075@qq.com> Date: Fri, 18 Oct 2024 19:12:50 +0800 Subject: [PATCH] =?utf8?q?=E7=94=B5=E8=AF=9D=E9=9F=B3=E9=A2=91=E4=BC=98?= =?utf8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../phoneservice/src/PhoneService.cpp | 21 ++++++------------- .../peripheral/slip/cat1Service/cat1_ctl.cpp | 20 +++++++++++------- .../slip/cat1Service/cat1_server.cpp | 2 +- 3 files changed, 20 insertions(+), 23 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneService.cpp b/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneService.cpp index fd522a355..d6e3f46b8 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneService.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/phoneservice/src/PhoneService.cpp @@ -643,17 +643,11 @@ static void ScoConnectPro(void) if(OHOS::CallerLogModel::GetInstance()->GetCallSource() == OHOS::CallerLogModel::CallSourceCat1 && OHOS::NotificationManager::GetInstance()->GetWatchCallStatus()) { + return; } + - // if(OHOS::CallerLogModel::GetInstance()->GetCallDial() == OHOS::CallerLogModel::HFP_PHONE_DIAL) - // { - // return; - // } - // else - // { - // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "手表拨号"); - // } ScoStatusCb(HFP_SCO_STATE_CONNECTED); @@ -662,8 +656,8 @@ static void ScoConnectPro(void) hfp_hf_calls_info_t call = {0}; HfpIncomingEventPublish(TOPIC_EVENT_HFP_PHONE_TO_WATCH, call); } - - PostGraphicEvent(AudioSetup); + PostGraphicEvent(AudioSetup); + WEARABLE_LOGI(WEARABLE_LOG_MODULE_APP, "[ScoConnectPro] audioState:%d", g_audioState); } @@ -675,14 +669,11 @@ static void ScoDisconnectPro(void) if(OHOS::CallerLogModel::GetInstance()->GetCallSource() == OHOS::CallerLogModel::CallSourceCat1 && OHOS::NotificationManager::GetInstance()->GetWatchCallStatus()) { + AudioRelease(); // 为了保持时序,此处采取同步调用 + usleep(5000); // 增加延时确保SCO断开AUDIO通路释放成功 return; } - // if(OHOS::CallerLogModel::GetInstance()->GetCallDial() == OHOS::CallerLogModel::HFP_PHONE_DIAL) - // { - // return; - // } - ScoStatusCb(HFP_SCO_STATE_DISCONNECTED); if ((g_currCallState == HFP_HF_CALL_STATE_ACTIVE && g_scoFlag == HFP_SCO_STATE_DISCONNECTED) || (g_scoFlag == HFP_SCO_STATE_CONNECT_FAILURE)) { diff --git a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_ctl.cpp b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_ctl.cpp index 01a383080..122c805ee 100644 --- a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_ctl.cpp +++ b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_ctl.cpp @@ -83,10 +83,13 @@ int32_t uapi_cat1_start_volte_voice(void) int32_t ret = ERRCODE_FAIL; int32_t argc = 1; uint8_t *argv = (uint8_t *)"start"; - - ret = VoiceCallVolteSample(argc, (const char **)&argv); - if(ret==0) - cat1_voice=1; + if(cat1_voice!=1) + { + ret = VoiceCallVolteSample(argc, (const char **)&argv); + if(ret==0) + cat1_voice=1; + } + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"ret %d %d ",ret, cat1_voice); return ret; @@ -101,9 +104,12 @@ int32_t uapi_cat1_stop_volte_voice(void) int32_t argc = 1; uint8_t *argv = (uint8_t *)"stop"; - ret = VoiceCallVolteSample(argc, (const char **)&argv); - if(ret==0) - cat1_voice=0; + if(cat1_voice!=0) + { + ret = VoiceCallVolteSample(argc, (const char **)&argv); + if(ret==0) + cat1_voice=0; + } WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"ret %d %d ",ret, cat1_voice); diff --git a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp index df9c7fed5..9ba6cc1d1 100644 --- a/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp +++ b/code/sdk/drivers/peripheral/slip/cat1Service/cat1_server.cpp @@ -806,7 +806,7 @@ void cat1_call_dial(char* phonenum) { bool volte = OHOS::ConfigModel::GetInstance()->GetVoLTE_Call(); if (volte == true){ - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"cat1_call_dial\n"); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"cat1_call_dial %s\n",phonenum); udp_send_msg_toCat1(UDP_CMD_DIAL_NUMB,phonenum); } -- 2.17.1