From f4570673dc85cdd22fefb8e777eda2707301eda3 Mon Sep 17 00:00:00 2001 From: Caisking Date: Wed, 17 Sep 2025 10:57:03 +0800 Subject: [PATCH] =?utf8?q?=E5=A2=9E=E5=8A=A0=E9=9B=B7=E9=B8=9FUI=E6=9C=8D?= =?utf8?q?=E5=8A=A1=20=E6=8F=90=E4=BE=9B=E4=BA=A7=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativeui/uiservice/include/ui_service.h | 103 ++++ .../nativeui/uiservice/include/ui_serviceC.h | 17 + .../nativeui/uiservice/src/ui_service.cpp | 451 +++++++++++++++++- 3 files changed, 549 insertions(+), 22 deletions(-) create mode 100644 code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_service.h create mode 100644 code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_serviceC.h diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_service.h b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_service.h new file mode 100644 index 000000000..599392852 --- /dev/null +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_service.h @@ -0,0 +1,103 @@ +/* + * Copyright (c) 2021-2021 CompanyNameMagicTag. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef OHOS_UI_SERVICE_H +#define OHOS_UI_SERVICE_H + +#include +#include "service.h" +#include "iunknown.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define UI_SERVICE "uiservice" + +typedef struct UiServiceFeatureApi { + INHERIT_IUNKNOWN; + int32_t (*SendMsg)(int32_t msgId, uint32_t msgValue, void *data, int32_t dataLen); +} UiServiceFeatureApi; + +typedef struct UiService UiService; + +struct UiService { + INHERIT_SERVICE; + INHERIT_IUNKNOWNENTRY(UiServiceFeatureApi); + Identity identity; +}; + +typedef enum { + JS_INSTALL_SUCESS_TO_UI, + JS_UNINSTALL_SUCESS_TO_UI, + PHONE_CONNECTED_TO_UI, //手机连接成功 + PHONE_DISCONNECTED_TO_UI, //手机断开连接 + EARPHONE_CONNECTED_TO_UI, //耳机连接成功 + EARPHONE_DISCONNECTED_TO_UI,//耳机断开连接 + BT_CONNECTED_TO_UI, //蓝牙连接成功 + BT_DISCONNECTED_TO_UI, //蓝牙断开连接 + UI_ADD_SLEEP_VETO, + UI_RM_SLEEP_VETO, + UI_UPDATE_SCREEN_DURATION, //更新亮屏时长 + UI_UPDATE_RAISETOBRIGHTNESS,//更新抬腕亮屏 + UI_UPDATE_BRIGHTNESS_VALUE, //更新亮度值 + UI_UPDATE_SYSTEM_VOLUME, //更新系统音量 + UI_UPDATE_CALL_VOLUME, //更新通话音量 + UI_UPDATE_VIBRATION_MODE, //更新震动模式 + UI_UPDATE_SILENT_MODE, //更新静音模式 + UI_UPDATE_DNOTDISTURB_MODE, //更新勿扰模式 + UI_UPDATE_MUSIC_PLAYER_LIST,//更新音乐列表 + + UI_UPDATE_WEATHER_DATA, //天气数据更新 + UI_UPDATE_SLEEP_DATA, //更新睡眠数据 + UI_UPDATE_MESSAGE_DATA, //更新消息数据 + UI_UPDATE_HEARTRATE_DATA, //更新心率曲线 + UI_UPDATE_DIALSTATE_DATA, //更新主界面状态 + + UI_AI_JUMP_TO_RESULT_VIEW, //跳转到返回结果视图 + UI_AI_JUMP_TO_LISTENING_VIEW,//跳转到AI聆听界面 + UI_AI_JUMP_TO_RESPONDERR_VIEW,//处理跳转AI回应错误界面 + UI_UPDATE_USER_QUESTION_STR,//更新用户问题的字符串 + UI_UPDATE_AI_ANSWER_STR, //更新AI答案的字符串 + UI_HAND_WATCH_FIRST_PAIRED, //手表已配对:给第一次手表启动用配对成功调用 + UI_UPDATE_RECORDPROCESS, //更新录音进度条 + UI_UPDATE_PLAYERPROCESS, //处理更新音乐进度条 + UI_UPDATE_GOAL, //更新每日目标 + UI_UPDATE_LANGUAGE, //更新语言 + UI_UPDATE_ALARM_INFO, // set alarm by app + UI_UPDATE_OBU_MESSAGE, + MAX_NUM_HANDLER, +} UiServiceMsgId; + +#define BUNDLE_NAME_LEN 128 +#define BUNDLE_PATH_LEN 255 +typedef struct { + char bundleName[BUNDLE_NAME_LEN]; + char label[BUNDLE_PATH_LEN]; + char smallIconPath[BUNDLE_PATH_LEN]; + char bigIconPath[BUNDLE_PATH_LEN]; +} BundleData; + +void SendMsgToUIService(int32_t msgId, uint32_t msgValue, void *data, int32_t dataLen); + +void ScreenTurnOn(int32_t timeout); +void ScreenTurnOff(void); +void ScreenOffEnable(int32_t enable); + +#ifdef __cplusplus +} +#endif + +#endif // OHOS_UiService_SERVICE_H diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_serviceC.h b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_serviceC.h new file mode 100644 index 000000000..cef237c4e --- /dev/null +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/include/ui_serviceC.h @@ -0,0 +1,17 @@ + +#ifndef OHOS_UI_SERVICE_C_H +#define OHOS_UI_SERVICE_C_H + + +#ifdef __cplusplus +extern "C" { +#endif + +#define UI_SERVICE "uiservice" +void HandleUpdatelcdMode(int); + +#ifdef __cplusplus +} +#endif + +#endif // OHOS_UiService_SERVICE_H diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/src/ui_service.cpp b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/src/ui_service.cpp index ef81ce75d..c393b370b 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/src/ui_service.cpp +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/uiservice/src/ui_service.cpp @@ -13,33 +13,54 @@ * limitations under the License. */ -#include "uiservice/ui_service.h" +#include "uiservice/include/ui_service.h" #include "wearable_log.h" #include "samgr_lite.h" -#include "settings/SettingModel.h" -#include "main/UiServersMsg.h" +#include "settings/include/SettingModel.h" +#include "UiServersMsg.h" #include "ohos_init.h" #include "memory_adapter.h" #include #include "service_id_define.h" #include "bundle_install_msg.h" #include "graphic_service.h" -#include "applist/ApplistModel.h" +#include "applist/include/ApplistModel.h" #if defined(SUPPORT_POWER_MANAGER) #include "power_display_service.h" #endif -#include "screennotify/ui_screennotify.h" -#include "main/HealthModel.h" +#include "screennotify/include/ui_screennotify.h" +#include "HealthModel.h" #include "bts_br_gap.h" #include "bts_le_gap.h" -#include "uiservice/ui_language.h" - #include "errcode.h" #include "pm_definition.h" -#include "NativeAbility.h" -#include "TransitionType.h" - +/* -------------------------------------------------------------------------- */ +#include +#include +#include +#include "displaybrightness/include/DisplayBrightnessModel.h" +#include "soundandvibration/include/SoundAndVibrationModel.h" +#include "rebootandshutdown/include/RebootAndShutdownModel.h" +#include "dnotdisturb/include/DnotDisturbModel.h" +// #include "obumessage/include/OBUMessageModel.h" +#include "player/include/PlayersModel.h" +#include "sleep/include/SleepModel.h" +#include "record/include/RecordingModel.h" +#include "message/include/MessageModel.h" +#include "heartrate/include/HeartModel.h" +#include "aivoice/include/AiVoiceModel.h" +#include "weather/include/WeatherModel.h" +#include "alarm/include/AlarmClockModel.h" +#include "uiservice/include/ui_service.h" +#include "main/include/MainModel.h" +#include "testModel.h" +#include "goal/include/goalmodel.h" + +#include "uiservice/include/ui_serviceC.h" +#include "languagecode/include/LanguageSwitchModel.h" +#include "custom_runtime.h" +/* -------------------------------------------------------------------------- */ extern "C" errcode_t uapi_pm_add_sleep_veto(pm_id_t veto_id); extern "C" errcode_t uapi_pm_remove_sleep_veto(pm_id_t veto_id); @@ -70,6 +91,95 @@ const int DATA_DIST_MAIL_LENGTH = 10; const int BYTE_OFFSET = 8; static uint32_t g_interval = 5; +/* -------------------------------------------------------------------------- */ +// 消息处理程序的函数指针类型 +typedef void (*MsgHandlerFunc)(Request *); +// 定义一个结构来保存消息处理程序 +typedef struct +{ + int msgId; + MsgHandlerFunc handler; +} MsgHandlerEntry; + +// 消息处理程序的函数原型 +static void HandleJSInstallSuccess(Request *request); +static void HandleJSUninstallSuccess(Request *request); +static void HandlePhoneConnected(Request *request); +static void HandlePhoneDisconnected(Request *request); +static void HandleEarphoneConnected(Request *request); +static void HandleEarphoneDisconnected(Request *request); +static void HandleBluetoothConnected(Request *request); +static void HandleBluetoothDisconnected(Request *request); +static void HandleAddSleepVeto(Request *request); +static void HandleRemoveSleepVeto(Request *request); +static void HandleUpdateScreenDuration(Request *request); +static void HandleUpdateRaiseToBrightness(Request *request); +static void HandleUpdateBrightnessValue(Request *request); +static void HandleUpdateWeatherData(Request *request); +static void HandleUpdateSystemVolume(Request *request); +static void HandleUpdateCallVolume(Request *request); +static void HandleUpdateVibrationMode(Request *request); +static void HandleUpdateSilentMode(Request *request); +static void HandleUpdateDontDisturbMode(Request *request); +static void HandleUpdateMusicPlayerList(Request *request); +static void HandleAiJumpToResultView(Request *request); +static void HandleAiJumpToListeningMessage(Request *request); +static void HandleAiJumpToRespondErrMessage(Request *request); +static void HandleUpdateUserQuestionStr(Request *request); +static void HandleUpdateAIAnswerStr(Request *request); +static void HandleWatchFirstPaired(Request *request); +static void HandleUpdateOBUMessage(Request *request); +static void HandleUpdateRecordProcess(Request *request); +static void HandleUpdatePlayerProcess(Request *request); +static void HandleUpdateSleep(Request *request); +static void HandleUpdateMessage(Request *request); +static void HandleUpdateHeartRate(Request *request); +static void HandleUpdateDialState(Request *request); +static void HandleUpdateAlarmInfo(Request *request); +static void HandleUpdateGoalInfo(Request *request); +static void HandleUpdateLanguageInfo(Request *request); + +// 消息处理程序项数组(每个消息类型对应一个处理函数,函数名以 Handle 开头) +MsgHandlerEntry msgHandlers[] = { + {JS_INSTALL_SUCESS_TO_UI, HandleJSInstallSuccess}, + {JS_UNINSTALL_SUCESS_TO_UI, HandleJSUninstallSuccess}, + {PHONE_CONNECTED_TO_UI, HandlePhoneConnected}, + {PHONE_DISCONNECTED_TO_UI, HandlePhoneDisconnected}, + {EARPHONE_CONNECTED_TO_UI, HandleEarphoneConnected}, + {EARPHONE_DISCONNECTED_TO_UI, HandleEarphoneDisconnected}, + {BT_CONNECTED_TO_UI, HandleBluetoothConnected}, + {BT_DISCONNECTED_TO_UI, HandleBluetoothDisconnected}, + {UI_ADD_SLEEP_VETO, HandleAddSleepVeto}, + {UI_RM_SLEEP_VETO, HandleRemoveSleepVeto}, + {UI_UPDATE_SCREEN_DURATION, HandleUpdateScreenDuration}, + {UI_UPDATE_RAISETOBRIGHTNESS, HandleUpdateRaiseToBrightness}, + {UI_UPDATE_BRIGHTNESS_VALUE, HandleUpdateBrightnessValue}, + {UI_UPDATE_WEATHER_DATA, HandleUpdateWeatherData}, + {UI_UPDATE_SYSTEM_VOLUME, HandleUpdateSystemVolume}, + {UI_UPDATE_CALL_VOLUME, HandleUpdateCallVolume}, + {UI_UPDATE_VIBRATION_MODE, HandleUpdateVibrationMode}, + {UI_UPDATE_SILENT_MODE, HandleUpdateSilentMode}, + {UI_UPDATE_DNOTDISTURB_MODE, HandleUpdateDontDisturbMode}, + {UI_UPDATE_MUSIC_PLAYER_LIST, HandleUpdateMusicPlayerList}, + {UI_AI_JUMP_TO_RESULT_VIEW, HandleAiJumpToResultView}, + {UI_UPDATE_USER_QUESTION_STR, HandleUpdateUserQuestionStr}, + {UI_UPDATE_AI_ANSWER_STR, HandleUpdateAIAnswerStr}, + {UI_HAND_WATCH_FIRST_PAIRED, HandleWatchFirstPaired}, + {UI_UPDATE_OBU_MESSAGE, HandleUpdateOBUMessage}, + {UI_AI_JUMP_TO_LISTENING_VIEW, HandleAiJumpToListeningMessage}, + {UI_AI_JUMP_TO_RESPONDERR_VIEW, HandleAiJumpToRespondErrMessage}, + {UI_UPDATE_RECORDPROCESS, HandleUpdateRecordProcess}, + {UI_UPDATE_PLAYERPROCESS, HandleUpdatePlayerProcess}, + {UI_UPDATE_GOAL, HandleUpdateGoalInfo}, + {UI_UPDATE_LANGUAGE, HandleUpdateLanguageInfo}, + + {UI_UPDATE_SLEEP_DATA, HandleUpdateSleep}, + {UI_UPDATE_MESSAGE_DATA, HandleUpdateMessage}, + {UI_UPDATE_HEARTRATE_DATA, HandleUpdateHeartRate}, + {UI_UPDATE_DIALSTATE_DATA, HandleUpdateDialState}, + {UI_UPDATE_ALARM_INFO, HandleUpdateAlarmInfo}, +}; +/* -------------------------------------------------------------------------- */ void ScreenTurnOn(int32_t timeout) { if (OHOS::HealthModel::GetInstance()->GetBriScrStatus() == 1) { @@ -77,8 +187,8 @@ void ScreenTurnOn(int32_t timeout) } #if defined(SUPPORT_POWER_MANAGER) WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[ScreenTurn] timeout = %d", timeout); - g_interval = get_back_to_home_interval(); - set_back_to_home_interval(0xFFFFFFFF); + // g_interval = get_back_to_home_interval(); + // set_back_to_home_interval(0xFFFFFFFF); const power_display_svr_api_t *display_api = power_display_svr_get_api(); if (display_api->get_screen_state() != SCREEN_ON) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[ScreenTurn] turn_on_screen"); @@ -94,11 +204,17 @@ void ScreenTurnOff(void) if (OHOS::HealthModel::GetInstance()->GetBriScrStatus() == 1) { return; } + if (uapi_dev_runtime_get_screen_always_on_status() == 1) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[ScreenTurnOff] screen is always on not can turn off"); + return; + } #if defined(SUPPORT_POWER_MANAGER) WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[ScreenTurnOff] timeout auto"); - set_back_to_home_interval(g_interval); + // set_back_to_home_interval(g_interval); const power_display_svr_api_t *display_api = power_display_svr_get_api(); display_api->set_screen_set_keepon_timeout(0); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[ScreenTurnOff] turn_off_screen 0"); #endif return; } @@ -174,6 +290,7 @@ BOOL ServiceInitialize(Service *service, Identity identity) void ServiceMsgProcess(Request *request) { +#if 0 switch (request->msgId) { case JS_INSTALL_SUCESS_TO_UI: case JS_UNINSTALL_SUCESS_TO_UI: @@ -199,15 +316,19 @@ void ServiceMsgProcess(Request *request) case CONNECT_NEW_PHONE: ConnectNewPhone(); break; - case UI_UPDATE_LANGUAGE: - OHOS::UILanguage::UpdateLanguage(); - break; - case UI_OTA_UPDATE: - power_display_svr_get_api()->turn_on_screen(); - OHOS::NativeAbility::GetInstance().ChangeSlice(VIEW_SET_OTA, - OHOS::TransitionType::TRANSITION_INVALID, OHOS::gSliceDefaultPriority, true); - break; } +#endif + /* -------------------------------------------------------------------------- */ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "UiServiceMsgId = %d", request->msgId); + for (int i = 0; i < MAX_NUM_HANDLER; ++i) + { + if (msgHandlers[i].msgId == request->msgId) + { + msgHandlers[i].handler(request); + break; + } + } + /* -------------------------------------------------------------------------- */ } BOOL ServiceMessageHandle(Service *service, Request *request) @@ -281,6 +402,292 @@ void SendMsgToUIService(int32_t msgId, uint32_t msgValue, void *data, int32_t da comApi->Release((IUnknown *)comApi); } +/* -------------------------------------------------------------------------- */ +void HandleJSInstallSuccess(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "bms msg_id = %d bundleName = %s", + request->msgId, ((BundleData *)request->data)->bundleName); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::ApplistModel::ApplistUpdate, &OHOS::ApplistModel::GetInstance())); +} + +void HandleJSUninstallSuccess(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "bms msg_id = %d bundleName = %s", + request->msgId, ((BundleData *)request->data)->bundleName); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::ApplistModel::ApplistUpdate, &OHOS::ApplistModel::GetInstance())); +} + +// 处理手机连接成功 +void HandlePhoneConnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandlePhoneConnectStatus"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdatePhoneConnectStatus, &OHOS::SettingModel::GetInstance(), true)); +} + +// 处理手机断开连接 +void HandlePhoneDisconnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandlePhoneDisconnected"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdatePhoneConnectStatus, &OHOS::SettingModel::GetInstance(), false)); +} + +// 处理耳机连接成功 +void HandleEarphoneConnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleEarphoneConnected"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdateEarPhoneConnectStatus, &OHOS::SettingModel::GetInstance(), true)); +} + +// 处理耳机断开连接 +void HandleEarphoneDisconnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleEarphoneConnected"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdateEarPhoneConnectStatus, &OHOS::SettingModel::GetInstance(), false)); +} + +// 处理蓝牙连接成功 +void HandleBluetoothConnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleBluetoothConnected"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdateBlueToothConnectStatus, &OHOS::SettingModel::GetInstance(), true)); +} + +// 处理蓝牙断开连接 +void HandleBluetoothDisconnected(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleBluetoothDisconnected"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SettingModel::UpdateBlueToothConnectStatus, &OHOS::SettingModel::GetInstance(), false)); +} + +void HandleAddSleepVeto(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleAddSleepVeto"); + uapi_pm_add_sleep_veto(PM_ID_SCREEN); +} + +void HandleRemoveSleepVeto(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleRemoveSleepVeto"); + uapi_pm_remove_sleep_veto(PM_ID_SCREEN); +} + +// 处理更新选择的亮屏时长标签内容 +void HandleUpdateScreenDuration(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateScreenDuration"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::DisplayBrightnessModel::UpdateSelectScreenDurationLabel, OHOS::DisplayBrightnessModel::GetInstance())); +} + +// 处理更新抬腕亮屏按钮状态 +void HandleUpdateRaiseToBrightness(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateRaiseToBrightness"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::DisplayBrightnessModel::UpdateRaiseToBrightnessCheckBoxButtonStatus, OHOS::DisplayBrightnessModel::GetInstance())); +} + +// 处理更新亮度条的亮度值值 +void HandleUpdateBrightnessValue(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateBrightnessValue"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::DisplayBrightnessModel::UpdateBrightnessValueOfSlider, OHOS::DisplayBrightnessModel::GetInstance())); +} + +// 处理更新天气数据 +static void HandleUpdateWeatherData(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateWeatherData"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::WeatherModel::UpdateMainWeatherData, &OHOS::WeatherModel::GetInstance())); +} + +// 处理更新系统音量 +void HandleUpdateSystemVolume(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateSystemVolume"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SoundAndVibrationModel::UpdateSystemVolume, OHOS::SoundAndVibrationModel::GetInstance())); +} + +// 处理更新通话音量 +void HandleUpdateCallVolume(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateCallVolume"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SoundAndVibrationModel::UpdateCallVolume, OHOS::SoundAndVibrationModel::GetInstance())); +} + +// 处理更新震动模式 +void HandleUpdateVibrationMode(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateVibrationMode"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SoundAndVibrationModel::UpdateVibrationModePickerSelectIndex, OHOS::SoundAndVibrationModel::GetInstance())); +} + +// 处理更新静音模式 +void HandleUpdateSilentMode(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateSilentMode"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SoundAndVibrationModel::UpdateSilentModeSwitch, OHOS::SoundAndVibrationModel::GetInstance())); +} + +// 处理更新勿扰模式 +void HandleUpdateDontDisturbMode(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateDontDisturbMode"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::DnotDisturbModel::UpdateDoNotDisturbMode, &OHOS::DnotDisturbModel::GetInstance())); +} + +// 处理更新音乐列表 +void HandleUpdateMusicPlayerList(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateMusicPlayerList"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::PlayersModel::UpdateMusicPlayerList, OHOS::PlayersModel::GetInstance())); +} + +// 处理Ai回应的用户数据 +void HandleAiJumpToResultView(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleAiJumpToResultView"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AiVoiceModel::ChangeToReturnResultTextView, &OHOS::AiVoiceModel::GetInstance())); +} + +// 处理更新用户问题字符串 +void HandleUpdateUserQuestionStr(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateUserQuestionStr"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AiVoiceModel::UpdateUserQuestionStr, &OHOS::AiVoiceModel::GetInstance())); +} + +// 处理更新AI答案字符串 +void HandleUpdateAIAnswerStr(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateAIAnswerStr"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AiVoiceModel::UpdateAiAnswerStr, &OHOS::AiVoiceModel::GetInstance())); +} + +// 处理手表第一次启动用来跳转主界面的 +void HandleWatchFirstPaired(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleWatchFirstPaired"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::RebootAndShutdownModel::HandFirstTimeStartJumpToMainView, &OHOS::RebootAndShutdownModel::GetInstance())); +} + +// 处理更新OBU Message +void HandleUpdateOBUMessage(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateOBUMessage"); + // GraphicService::GetInstance()->PostGraphicEvent( + // std::bind(&OHOS::OBUMessageModel::UpdateOBUMessageViewData, &OHOS::OBUMessageModel::GetInstance())); +} + +// 处理更新查询AI模型是否连接成功的状态 +void HandleAiJumpToListeningMessage(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleAiJumpToListeningMessage"); + bool state = *((bool *)request->data); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AiVoiceModel::ChangeToAIVoiceListeningView, &OHOS::AiVoiceModel::GetInstance(), state)); +} + +// 处理跳转AI回应错误界面 +void HandleAiJumpToRespondErrMessage(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleAiJumpToRespondErrMessage"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AiVoiceModel::ChangeToAIVoiceConnectTimeoutView, &OHOS::AiVoiceModel::GetInstance())); +} + +// 处理更新录音进度条 +void HandleUpdateRecordProcess(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateRecordProcess"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::RecordingModel::UpdateRecordProcess, OHOS::RecordingModel::GetInstance())); +} + +// 处理更新音乐进度条 +void HandleUpdatePlayerProcess(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdatePlayerProcess"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::PlayersModel::UpdatePlayerProcess, OHOS::PlayersModel::GetInstance())); +} + +// 更新睡眠数据 +void HandleUpdateSleep(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateSleep"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::SleepModel::UpdateSleepView, &OHOS::SleepModel::GetInstance())); +} +// 更新消息数据 +void HandleUpdateMessage(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateMessage"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::MessageModel::UpdateMessageView, &OHOS::MessageModel::GetInstance())); +} +// 更新心率数据 +void HandleUpdateHeartRate(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateMessage"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::HeartModel::Heart_Update_View, OHOS::HeartModel::GetInstance())); +} +// 更新主界面状态数据 +void HandleUpdateDialState(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateMessage"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::MainModel::UpdateDialState, &OHOS::MainModel::GetInstance())); +} + +void HandleUpdatelcdMode(int type) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateSilentMode"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::testModel::testModelupdata, OHOS::testModel::GetInstance(), type)); +} + +static void HandleUpdateAlarmInfo(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateAlarmInfo"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::AlarmClockModel::UpdateAlarmInfoByAppSet, OHOS::AlarmClockModel::GetInstance())); +} + +static void HandleUpdateGoalInfo(Request *request) +{ + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::GoalModel::updata, &OHOS::GoalModel::GetInstance())); +} + +static void HandleUpdateLanguageInfo(Request *request) +{ + uint32_t id = *((uint32_t *)request->data); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::LanguageSwitchModel::LanguageSwitchViewupdata, &OHOS::LanguageSwitchModel::GetInstance(), id)); +} +/* -------------------------------------------------------------------------- */ #ifdef __cplusplus } #endif -- 2.17.1