From 4ad5b65a6bada1d90693d02c8c0b0798c7980489 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E7=BD=97=E6=AD=A3?= <1732036298@qq.com> Date: Thu, 31 Oct 2024 09:08:58 +0000 Subject: [PATCH] Merge #1304 into sdk602patch0911 from refs/changes/1304/head MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Code review from 罗正 * refs/changes/1304/head: (2 commits squashed) - 解决耳机配对后重启蓝牙耳机连接点击无反应bug - Merge branch 'sdk602patch0911' of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into sdk602patch0911 Signed-off-by: 罗正 <1732036298@qq.com> Reviewed-by: Caisking <3449750381@qq.com> Reviewed-by: 罗正 <1732036298@qq.com> Reviewed-by: aliyun8003852482 <1224667075@qq.com> Reviewed-by: snickersun@163.com Reviewed-by: aliyun6865282430 <1624952103@qq.com> Merged-by: Caisking <3449750381@qq.com> CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/1304 --- .../src/BluetoothDeviceCaseListAdapter.cpp | 15 +++++++++++---- .../nativeui/player/src/MusicPlayerSourceView.cpp | 9 ++++++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/bluetooth/src/BluetoothDeviceCaseListAdapter.cpp b/code/sdk/application/wearable/fd230app/nativeui/bluetooth/src/BluetoothDeviceCaseListAdapter.cpp index 5be4c75c0..c6346f7f3 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/bluetooth/src/BluetoothDeviceCaseListAdapter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/bluetooth/src/BluetoothDeviceCaseListAdapter.cpp @@ -76,17 +76,24 @@ public: if(view.GetViewType() == UIViewType::UI_BUTTON) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UIViewType::UI_BUTTON,%s",reinterpret_cast(bluetoothInfo_.deviceName)); - // 判断是否正在连接 bd_addr_t *lastAddr = BluetoothModel::GetInstance()->GetLastConnedAddr(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "lastAddr:%02X %02X %02X * * *", + lastAddr->addr[0],lastAddr->addr[1],lastAddr->addr[2]); + bool ret = bt_is_acl_connected(lastAddr); - if (ret) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "bt_is_acl_connected:%d lastAddr:%02X %02X %02X * * *", + ret, lastAddr->addr[0],lastAddr->addr[1],lastAddr->addr[2]); + + //地址不是全0并且ret为真 + if (!( lastAddr->addr[0] == 0 && lastAddr->addr[1] == 0 && lastAddr->addr[2] == 0 && + lastAddr->addr[3] == 0 && lastAddr->addr[4] == 0 && lastAddr->addr[5] == 0 ) && ret) { BluetoothModel::GetInstance()->SetTagConnectNew(false); errcode_t retVal = gap_disconnect_remote_device(lastAddr); - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Disconnect LastDevice retVal = %d", retVal); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[gap_disconnect_remote_device] retVal = %d", retVal); } else { mainBluetoothView->ChangeView(BluetoothModel::GetInstance()->GetCurView(), BLUETOOTHRECONNECTVIEW); errcode_t retVal = BluetoothModel::GetInstance()->ConnectRemoteDevice(&addr); - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ConnectRemoteDevice ret = %d", retVal); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[ConnectRemoteDevice] retVal = %d", retVal); } } else if(view.GetViewType() == UIViewType::UI_IMAGE_VIEW) /*点击的是图片*/ diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp index fe94d9900..ee89bf6a0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp @@ -516,16 +516,19 @@ namespace OHOS { bool state = SettingModel::GetInstance().GetEarPhoneConnectStatus(); List &bluetoothCaseList = BluetoothModel::GetInstance()->GetConnedDevicesCase(); - if (bluetoothCaseList.IsEmpty()) // 如果已连接设备列表为空,则显示未配对 + bool ConnedDevicesListIsEmpty = bluetoothCaseList.IsEmpty(); + if (ConnedDevicesListIsEmpty) // 如果已连接设备列表为空,则显示未配对 { bluetoothHeadsetConnectState->SetTextId(STR_NOT_PAIRED); + bluetoothHeadsetConnectState->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x7f)); + bluetoothHeadsetConnectState->Invalidate(); } else // 否则则显示连接状态 { bluetoothHeadsetConnectState->SetTextId(state ? STR_CONNECTED : STR_DISCONNECTED); + bluetoothHeadsetConnectState->SetTextColor(state ? Color::GetColorFromRGBA(0x4f, 0xc3, 0x4c, 0xff) : Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x7f)); + bluetoothHeadsetConnectState->Invalidate(); } - bluetoothHeadsetConnectState->SetTextColor(state ? Color::GetColorFromRGBA(0x4f, 0xc3, 0x4c, 0xff) : Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x7f)); - bluetoothHeadsetConnectState->Invalidate(); } } } -- 2.17.1