From d59c38581b486b6d174e88ed9d2f58c34492d4b6 Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Sat, 20 Jul 2024 19:23:23 +0800 Subject: [PATCH] =?utf8?q?=E5=AE=9E=E7=8E=B0=EF=BC=9A=E6=81=A2=E5=A4=8D?= =?utf8?q?=E5=87=BA=E5=8E=82=E8=AE=BE=E7=BD=AE=E5=90=8E=E5=BF=85=E9=A1=BB?= =?utf8?q?=E7=BB=91=E5=AE=9A=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=89=8D=E8=83=BD?= =?utf8?q?=E8=BF=9B=E5=85=A5=E4=B8=BB=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativeui/languagecode/LanguageInit.cpp | 4 +-- .../include/LanguageSwitchModel.h | 3 +- .../languagecode/src/LanguageSwitchModel.cpp | 12 +------- .../src/LanguageSwitchPresenter.cpp | 29 +++++++++---------- .../languagecode/src/LanguageSwitchView.cpp | 6 ++-- .../include/RebootAndShutdownModel.h | 3 +- .../src/RebootAndShutdownModel.cpp | 15 ++++++++-- .../nativeui/uiservice/include/ui_service.h | 5 ++-- .../nativeui/uiservice/src/ui_service.cpp | 11 +++++++ .../service/ble_service/blemoder/bletest.cpp | 6 ++-- .../service/ble_service/blemoder/bletest.h | 2 ++ .../ble_service/bleservice/bleService.c | 3 +- .../peripheral/config/include/ConfigModel.h | 7 ++++- .../peripheral/config/src/ConfigModel.cpp | 12 ++++++++ 14 files changed, 74 insertions(+), 44 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/languagecode/LanguageInit.cpp b/code/sdk/application/wearable/fd230app/nativeui/languagecode/LanguageInit.cpp index d9e55d8cc..047731c5d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/languagecode/LanguageInit.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/languagecode/LanguageInit.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-30 09:14:38 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-06-13 17:18:54 + * @LastEditTime: 2024-07-20 18:03:40 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/languagecode/LanguageInit.cpp */ #include @@ -126,12 +126,10 @@ namespace OHOS */ //thelanguage = 0; NativeAbility::GetInstance().SetDefaultSliceId(VIEW_LANGUAGE_SWITCH); - LanguageSwitchModel::GetInstance().SetisFirstTimeStart(true); } else { NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN); - LanguageSwitchModel::GetInstance().SetisFirstTimeStart(false); } FontGlobalManager::GetInstance()->RegisterLanguageInfo(resFiles, MAX_LANGUAGE, thelanguage); return true; diff --git a/code/sdk/application/wearable/fd230app/nativeui/languagecode/include/LanguageSwitchModel.h b/code/sdk/application/wearable/fd230app/nativeui/languagecode/include/LanguageSwitchModel.h index 9e954e4c7..9181f0c9e 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/languagecode/include/LanguageSwitchModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/languagecode/include/LanguageSwitchModel.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-28 16:36:58 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-06-13 18:05:27 + * @LastEditTime: 2024-07-20 17:59:33 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/languagecode/include/LanguageSwitchModel.h */ @@ -33,7 +33,6 @@ namespace OHOS const LanguageSwitchModel &operator=(const LanguageSwitchModel &) = delete; static const uint16_t LANGUAGE_ITEM_MAX = MAX_LANGUAGE; // 语言总数 std::string PreLanguageCode; // 上一次切换的语言 - bool isFirstTimeStart; // 手表是否是第一次启动 }; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchModel.cpp index 93602c527..72e3b28c5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchModel.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-28 16:36:46 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-06-13 17:17:45 + * @LastEditTime: 2024-07-20 17:59:51 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchModel.cpp */ #include "languagecode/include/LanguageSwitchModel.h" @@ -53,14 +53,4 @@ namespace OHOS { return PreLanguageCode.c_str(); } - - void LanguageSwitchModel::SetisFirstTimeStart(bool value) - { - isFirstTimeStart = value; - } - - bool LanguageSwitchModel::GetisFirstTimeStart(void) - { - return isFirstTimeStart; - } } \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchPresenter.cpp index c673d3ee3..fa31424c7 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchPresenter.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-28 14:17:43 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-06-28 09:32:58 + * @LastEditTime: 2024-07-20 18:11:50 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchPresenter.cpp */ #include "AppViewIDs.h" @@ -13,7 +13,7 @@ #include "common/key_code.h" #include #include "languagecode/LanguageInit.h" - +#include "ConfigModel.h" namespace OHOS { extern Language languages[]; @@ -49,12 +49,10 @@ namespace OHOS { return; } - else + + for (uint8_t i = 0; i < MAX_LANGUAGE; i++) { - for (uint8_t i = 0; i < MAX_LANGUAGE; i++) - { - view_->AddLanguageItemToList(languages[i]); - } + view_->AddLanguageItemToList(languages[i]); } } @@ -94,6 +92,14 @@ namespace OHOS bool LanguageSwitchPresenter::OnClick(UIView &view, const ClickEvent &event) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "RespiratoryTrainingPresenter::OnClick"); + + /* -------------------------------------------------------------------------- */ + if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) + { + NativeAbility::GetInstance().EnterSlice(VIEW_WATCH_QR_CODE); + } + /* -------------------------------------------------------------------------- */ + UNUSED(event); const char *lastLanguageCode = p_LanguageSwitchModel->GetLastLanguageCode(); UILabelButtonExt *p_UILabelButtonExt = dynamic_cast(&view); @@ -129,15 +135,6 @@ namespace OHOS // 更新上一个语言ID p_LanguageSwitchModel->SetLastLanguageCode(p_LanguageSwitchModel->GetCurLanguageCode()); } - if (p_LanguageSwitchModel->GetisFirstTimeStart() == true) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN); - NativeAbility::GetInstance().SetDefaultSliceId(VIEW_MAIN); // 暂定选完语言后设置默认的Sliceid为主界面 - } - else - { - NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS); - } return true; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchView.cpp b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchView.cpp index bdb883de3..9f8609112 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/languagecode/src/LanguageSwitchView.cpp @@ -5,12 +5,12 @@ namespace OHOS { static constexpr int16_t TITLE_LABEL_X = 83; - static constexpr int16_t TITLE_LABEL_Y = 52; + static constexpr int16_t TITLE_LABEL_Y = 50; static constexpr int16_t TITLE_LABEL_W = 300; static constexpr int16_t TITLE_LABEL_H = 40; static constexpr int16_t TITLE_LABEL_TEXT_FONT = 30; static constexpr int16_t TITLE_LABEL_LINE_HEIGHT = 35; - static constexpr int16_t TITLE_LABEL_TEXT_ROLLSPEED = 40; + static constexpr int16_t TITLE_LABEL_TEXT_ROLLSPEED = 70; static constexpr int16_t LANGUAGE_LIST_X = 43; static constexpr int16_t LANGUAGE_LIST_Y = 120; @@ -108,7 +108,7 @@ namespace OHOS LanguageSwitchViewTitleLabel->SetStyle(STYLE_LINE_HEIGHT, TITLE_LABEL_LINE_HEIGHT); // LanguageSwitchViewTitleLabel->SetText("语言"); LanguageSwitchViewTitleLabel->SetTextId(STR_LANGUAGE_SELECTION); - LanguageSwitchViewTitleLabel->SetLineBreakMode(UILabel::LINE_BREAK_MARQUEE); + LanguageSwitchViewTitleLabel->SetLineBreakMode(UILabel::LINE_BREAK_OSCILLATION); LanguageSwitchViewTitleLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); LanguageSwitchViewTitleLabel->SetRollSpeed(TITLE_LABEL_TEXT_ROLLSPEED); LanguageSwitchViewTitleLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, TITLE_LABEL_TEXT_FONT); diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModel.h b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModel.h index 3e1f0480e..2702c8187 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModel.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-07-18 14:55:21 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-07-18 14:56:47 + * @LastEditTime: 2024-07-20 18:53:51 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/RebootAndShutdownModel.h */ @@ -15,6 +15,7 @@ namespace OHOS { public: static RebootAndShutdownModel &GetInstance(void); + void HandFirstTimeStartJumpToMainView(void); private: RebootAndShutdownModel(); 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 2e9fbbe99..618de55c9 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp @@ -2,13 +2,16 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-07-18 14:55:27 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-07-18 14:56:16 + * @LastEditTime: 2024-07-20 18:55:10 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/RebootAndShutdownModel.cpp */ #include "rebootandshutdown/include/RebootAndShutdownModel.h" #include "wearable_log.h" - +#include "ConfigModel.h" +#include "NativeAbility.h" +#include +#include "settings/include/SettingModel.h" namespace OHOS { RebootAndShutdownModel::RebootAndShutdownModel() {} @@ -21,4 +24,12 @@ namespace OHOS return instance; } + void RebootAndShutdownModel::HandFirstTimeStartJumpToMainView(void) + { + if(ConfigModel::GetInstance()->GetisFirstTimeStart() == true && SettingModel::GetInstance().GetPhoneConnectStatus() == true) + { + NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN); + ConfigModel::GetInstance()->SetisFirstTimeStart(false); + } + } } diff --git a/code/sdk/application/wearable/fd230app/nativeui/uiservice/include/ui_service.h b/code/sdk/application/wearable/fd230app/nativeui/uiservice/include/ui_service.h index f2fbfb1f8..bc5ac2a05 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/uiservice/include/ui_service.h +++ b/code/sdk/application/wearable/fd230app/nativeui/uiservice/include/ui_service.h @@ -8,7 +8,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-12 11:44:04 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-07-16 09:38:05 + * @LastEditTime: 2024-07-20 19:11:16 * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/uiservice/include/ui_service.h */ /* @@ -79,7 +79,8 @@ typedef enum { UI_AI_JUMP_TO_RESULT_VIEW, //跳转到返回结果视图 UI_UPDATE_USER_QUESTION_STR,//更新用户问题的字符串 - UI_UPDATE_AI_ANSWER_STR, //更新AI答案的字符串 + UI_UPDATE_AI_ANSWER_STR, //更新AI答案的字符串 + UI_HAND_WATCH_FIRST_PAIRED, //手表已配对:给第一次手表启动用配对成功调用 MAX_NUM_HANDLER, } UiServiceMsgId; diff --git a/code/sdk/application/wearable/fd230app/nativeui/uiservice/src/ui_service.cpp b/code/sdk/application/wearable/fd230app/nativeui/uiservice/src/ui_service.cpp index 1056e0084..4ba3c78c5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/uiservice/src/ui_service.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/uiservice/src/ui_service.cpp @@ -18,6 +18,7 @@ #include #include "displaybrightness/include/DisplayBrightnessModel.h" #include "soundandvibration/include/SoundAndVibrationModel.h" +#include "rebootandshutdown/include/RebootAndShutdownModel.h" #include "sleep/include/SleepModel.h" #include "aivoice/include/AiVoiceModel.h" #include "weather/include/WeatherModel.h" @@ -106,6 +107,7 @@ static void HandleUpdateSilentMode(Request *request); static void HandleAiJumpToResultView(Request *request); static void HandleUpdateUserQuestionStr(Request *request); static void HandleUpdateAIAnswerStr(Request *request); +static void HandleWatchFirstPaired(Request *request); static void HandleUpdateSleep(Request *request); @@ -135,6 +137,7 @@ MsgHandlerEntry msgHandlers[] = { {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_SLEEP_DATA, HandleUpdateSleep}, }; @@ -545,6 +548,14 @@ void HandleUpdateAIAnswerStr(Request *request) std::bind(&OHOS::AiVoiceModel::UpdateAiAnswerStr, &OHOS::AiVoiceModel::GetInstance())); } +//处理手表第一次启动用来跳转主界面的 +void HandleWatchFirstPaired(Request *request) +{ + WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleUpdateAIAnswerStr"); + GraphicService::GetInstance()->PostGraphicEvent( + std::bind(&OHOS::RebootAndShutdownModel::HandFirstTimeStartJumpToMainView, &OHOS::RebootAndShutdownModel::GetInstance())); +} + void HandleUpdateSleep(Request *request) { WEARABLE_LOGI(WEARABLE_LOG_MODULE_UI_SERVICE, "HandleEarphoneConnected"); diff --git a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp index d9bff3395..071f256b2 100644 --- a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp +++ b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp @@ -84,8 +84,10 @@ void ble_disconnect_ok(void) SendMsgToUIService(PHONE_DISCONNECTED_TO_UI, 0, nullptr, 0); } - - +void hand_watch_first_time_Paired(void) +{ + SendMsgToUIService(UI_HAND_WATCH_FIRST_PAIRED, 0, nullptr, 0); +} void ble_set_ai_Question_str(char *buf) { diff --git a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.h b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.h index 6a75ac26d..0269a5b3e 100644 --- a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.h +++ b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.h @@ -327,6 +327,8 @@ void ble_connect_ok(void); void ble_disconnect_ok(void); +void hand_watch_first_time_Paired(void); + #ifdef __cplusplus #if __cplusplus } diff --git a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c index 15259fa8c..c9a6aaf0d 100644 --- a/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c +++ b/code/sdk/application/wearable/service/ble_service/bleservice/bleService.c @@ -342,7 +342,8 @@ void svr_pair_result_cbt_cb(uint16_t conn_id, const bd_addr_t *addr, errcode_t s int ret=gap_reconnect_media_device(&phone_addr); WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "gap_reconnect_media_device!!! %X\r\n",ret); - } + } + hand_watch_first_time_Paired(); } diff --git a/code/sdk/drivers/peripheral/config/include/ConfigModel.h b/code/sdk/drivers/peripheral/config/include/ConfigModel.h index 11cf5c54a..8282eb5b2 100644 --- a/code/sdk/drivers/peripheral/config/include/ConfigModel.h +++ b/code/sdk/drivers/peripheral/config/include/ConfigModel.h @@ -126,6 +126,7 @@ namespace OHOS CONFIGMOFEL_ITEM_DMP_CHINA_MOBILE_ADDRESS,//移动入库地址默认测试是适配地址 b.fxltsbl.com 出正式需要修改商用地址 a.fxltsbl.com CONFIGMODEL_ITEM_SELECT_AIMODEL,//ai模型 + CONFIGMODEL_ITEM_FIRSTTIMESTART,//手表是否是第一次启动 CONFIGMODEL_ITEM_MAX, } ; @@ -272,6 +273,9 @@ namespace OHOS /* ---------------------------------- ai模型相关set与get ---------------------------------- */ void SetSelectAiModel(int value); int GetSelectAiModel(void); + /* -------------------------------------------------------------------------- */ + void SetisFirstTimeStart(bool value); + bool GetisFirstTimeStart(void); /* --------------------------------- 用户配置信息 --------------------------------- */ void SetUserAge(int age); int GetUserAge(); @@ -362,7 +366,8 @@ namespace OHOS #endif {ConfigDataType::DATATYPE_INT, "time_hour_show_model", "24" },//CONFIGMODEL_ITEM_24HOUR,//默认24小时模式显示 ,12 12小时显示 ,24 24小时显示 {ConfigDataType::DATATYPE_STRING, "dmp_china_mobile_address", "b.fxltsbl.com"},//CONFIGMOFEL_ITEM_DMP_CHINA_MOBILE_ADDRESS 移动入库地址 测试使用适配地址 IP = b.fxltsbl.com 出正式使用商用地址 IP = a.fxltsbl.com - {ConfigDataType::DATATYPE_INT, "select_aimodel", "0" },//CONFIGMODEL_SELECT_AIMODEL 0:豆包 1:文心一言 2:kimi 3:ChatGPT + {ConfigDataType::DATATYPE_INT, "select_aimodel", "0" },//CONFIGMODEL_ITEM_SELECT_AIMODEL 0:豆包 1:文心一言 2:kimi 3:ChatGPT + {ConfigDataType::DATATYPE_BOOL, "is_first_time_start", "true" }, //CONFIGMODEL_ITEM_FIRSTTIMESTART true :手表第一次启动,否则不是 }; ConfigModel(); // 私有构造函数,确保无法在外部实例化 ConfigModel(const ConfigModel &) = delete; // 禁止拷贝构造 diff --git a/code/sdk/drivers/peripheral/config/src/ConfigModel.cpp b/code/sdk/drivers/peripheral/config/src/ConfigModel.cpp index fd6aa90e7..93bcf2a7c 100644 --- a/code/sdk/drivers/peripheral/config/src/ConfigModel.cpp +++ b/code/sdk/drivers/peripheral/config/src/ConfigModel.cpp @@ -1182,6 +1182,18 @@ namespace OHOS { return get_configData_int(CONFIGMODEL_ITEM_SELECT_AIMODEL); } + + /*设置手表是否是第一次启动*/ + void ConfigModel::SetisFirstTimeStart(bool value) + { + set_condigData_Bool(CONFIGMODEL_ITEM_FIRSTTIMESTART,value); + } + + /*获取手表是否是第一次启动*/ + bool ConfigModel::GetisFirstTimeStart(void) + { + return get_configData_bool(CONFIGMODEL_ITEM_FIRSTTIMESTART); + } /* -------------------------------------------------------------------------- */ /*设置用户年龄[后续使用结构体统一配置]*/ void ConfigModel::SetUserAge(int age) -- 2.17.1