From c042e60913e28674e56d1cd70864b23f4ed47dac Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Sat, 3 Aug 2024 18:25:37 +0800 Subject: [PATCH] =?utf8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD=E9=8D=B5?= =?utf8?q?=E8=BF=9B=E5=85=A5AI=E8=AF=AD=E9=9F=B3=E7=95=8C=E9=9D=A2?= =?utf8?q?=EF=BC=8C=E5=92=8C=E5=8D=95=E5=87=BB=E5=88=87=E6=8D=A2=E6=A8=A1?= =?utf8?q?=E5=9E=8B=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativeui/aivoice/include/AiVoiceModel.h | 3 ++- .../aivoice/include/AiVoicePresenter.h | 3 ++- .../nativeui/aivoice/src/AiVoiceModel.cpp | 15 ++++++++++++++- .../nativeui/aivoice/src/AiVoicePresenter.cpp | 15 ++++++++++++++- .../src/RebootAndShutdownModel.cpp | 19 ++++++++++++------- 5 files changed, 44 insertions(+), 11 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoiceModel.h b/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoiceModel.h index 651199cfb..9990df96d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoiceModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoiceModel.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-20 15:14:43 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-03 14:26:12 + * @LastEditTime: 2024-08-03 17:45:26 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoiceModel.h */ #ifndef AI_VOICE_MODEL_H @@ -30,6 +30,7 @@ namespace OHOS static AiVoiceModel &GetInstance(void); // 获取单例实例 bool ChangeToReturnResultTextView(void); bool ChangeToAIVoiceListeningView(bool value); + void FunctionKeyOnClickToChangeAIModel(void); // 初始化和状态管理 bool CreateIfNotExists(); void StatusResume(void); diff --git a/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h b/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h index 4438950fa..afd2f321a 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-20 14:44:22 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-03 17:28:03 + * @LastEditTime: 2024-08-03 17:46:15 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/include/AiVoicePresenter.h */ #ifndef AI_VOICE_PRESENTER_H @@ -44,6 +44,7 @@ namespace OHOS bool JumpToReturnResultTextView(void); bool ChangeToAIVoiceListeningView(bool val); bool ChangeViewAndLogicOperator(int16_t hideView, int16_t showView); + void FunctionKeyOnClickToChangeAIModel(void); private: bool OnClick(UIView &view, const ClickEvent &event) override; diff --git a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp index c6d26a998..5853ceb60 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-20 15:14:50 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-03 15:06:35 + * @LastEditTime: 2024-08-03 17:47:08 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoiceModel.cpp */ #include "aivoice/include/AiVoiceModel.h" @@ -69,6 +69,19 @@ namespace OHOS return true; } + void AiVoiceModel::FunctionKeyOnClickToChangeAIModel(void) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiVoiceModel::FunctionKeyOnClickToChangeAIModel"); + AiVoicePresenter *Aipresenter_ = AiVoicePresenter::GetInstance(); + if (Aipresenter_ == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AiVoiceModel::FunctionKeyOnClickToChangeAIModel fail!!"); + return; + } + Aipresenter_->FunctionKeyOnClickToChangeAIModel(); + return; + } + /*如果文件不存在就创建*/ bool AiVoiceModel::CreateIfNotExists() { diff --git a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp index 7012df07b..9b1b97a66 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-20 15:11:17 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-03 16:26:41 + * @LastEditTime: 2024-08-03 17:48:50 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/aivoice/src/AiVoicePresenter.cpp */ #include "AppViewIDs.h" @@ -130,6 +130,19 @@ namespace OHOS return true; } + void AiVoicePresenter::FunctionKeyOnClickToChangeAIModel(void) + { + int index = model->GetSelectAiModel() + 1; + if (index >= AIMODES_MAX_NUM) + { + index = 0; + } + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiModelsPresenter::index = %d", index); + model->SetSelectAiModel(index); + view_->ChangeAiModelAndUpdateComponentsStatus(); + return; + } + bool AiVoicePresenter::ChangeViewAndLogicOperator(int16_t hideView, int16_t showView) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AiVoicePresenter::ChangeViewOperator"); diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp index 7981ad104..f7b09191d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-07-18 14:55:27 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-02 11:57:16 + * @LastEditTime: 2024-08-03 17:53:50 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp */ @@ -15,7 +15,7 @@ #include "settings/include/SettingModel.h" #include #include "themestyle/include/ThemeStyleModel.h" -#include "aimodels/include/AiModelsModel.h" +#include "aivoice/include/AiVoiceModel.h" #include "ConfigModel.h" #include "graphic_service.h" namespace OHOS @@ -276,10 +276,15 @@ namespace OHOS if (display_api->get_screen_state() == SCREEN_ON) { - AiModelsModel &aiModelsModel = AiModelsModel::GetInstance(); - if (!aiModelsModel.ChangeAiModel()) + uint16_t curSliceId = NativeAbility::GetInstance().GetCurSliceId(); + if (curSliceId == VIEW_AI_VOICE) // 如果当前已在ai语音界面单击切换模型 + { + AiVoiceModel::GetInstance().FunctionKeyOnClickToChangeAIModel(); + return; + } + else { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Failed to change AI model"); + NativeAbility::GetInstance().EnterSlice(VIEW_AI_VOICE);// 切换到Ai语音界面 } } else @@ -363,8 +368,8 @@ namespace OHOS RegisterPowerKeyDoubleClickEvent(); RegisterPowerKeyLongPressEvent(); RegisterFuncKeyPressEvent(); - RegisterFuncKeyLongPressEvent(); - // RegisterFuncKeyClickEvent(); + // RegisterFuncKeyLongPressEvent(); + RegisterFuncKeyClickEvent(); // RegisterFuncKeyDoubleClickEvent(); } } -- 2.17.1