From: cheng <2393524978@qq.com> Date: Mon, 26 Jan 2026 03:49:47 +0000 (+0800) Subject: Z5_HA_K18 修改 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=fa9b34b7040ae3e1a7e893590757e88092a244ca;p=mirrors%2FASR3603_Z5.git Z5_HA_K18 修改 --- diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_BEGIN.mp3 b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_BEGIN.mp3 new file mode 100644 index 00000000..4a58abe9 Binary files /dev/null and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_BEGIN.mp3 differ diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_END.mp3 b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_END.mp3 new file mode 100644 index 00000000..2d32125e Binary files /dev/null and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/audio/AUDIO_BP_MEASURE_END.mp3 differ diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_L_ARROW.png b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_L_ARROW.png new file mode 100644 index 00000000..ad4d65e4 Binary files /dev/null and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_L_ARROW.png differ diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_R_ARROW.png b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_R_ARROW.png new file mode 100644 index 00000000..3753447e Binary files /dev/null and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/custom_function/ICON_HENGAI_BP_R_ARROW.png differ diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dial_dolphin.png b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dial_dolphin.png index f05cef24..f894c389 100644 Binary files a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dial_dolphin.png and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dial_dolphin.png differ diff --git a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dolphin.png b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dolphin.png index e951ae55..51bb5df4 100644 Binary files a/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dolphin.png and b/2.sdk/project/Z5_HA_K18/gui/lv_watch/resource/png/dial_dolphin/icon_dolphin.png differ diff --git a/2.sdk/project/Z5_HA_K18/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h b/2.sdk/project/Z5_HA_K18/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h index 9142851c..42d30ea1 100644 --- a/2.sdk/project/Z5_HA_K18/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h +++ b/2.sdk/project/Z5_HA_K18/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h @@ -210,6 +210,7 @@ #define __MMI_CUSTOM_HENGAI_HEALTH__ #define __MMI_CUSTOM_HENGAI_HEALTH_UPLOAD_USE_TCP__ +#define __MMI_CUSTOM_HENGAI_USER_INFO__ //#define __MMI_CUSTOM_HENGAI_TCMS__ diff --git a/2.sdk/sdk/gui/lv_drivers/indev/sos_key.c b/2.sdk/sdk/gui/lv_drivers/indev/sos_key.c index e0cc6441..ad10239d 100644 --- a/2.sdk/sdk/gui/lv_drivers/indev/sos_key.c +++ b/2.sdk/sdk/gui/lv_drivers/indev/sos_key.c @@ -335,6 +335,13 @@ void sos_key_ui_handle(void) } #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + if(true == mmi_is_ACT_ID_HENGAI_USER_INFO()) + { + return ; + } +#endif + #ifdef __MMI_KEY_BACK_RUN_PHONEBOOK_WHEN_IN_DIAL__ if(lv_watch_is_activity_one_level()) { diff --git a/2.sdk/sdk/gui/lv_watch/framework/language/lang_ch.c b/2.sdk/sdk/gui/lv_watch/framework/language/lang_ch.c index 0def210a..51fe58c5 100644 --- a/2.sdk/sdk/gui/lv_watch/framework/language/lang_ch.c +++ b/2.sdk/sdk/gui/lv_watch/framework/language/lang_ch.c @@ -1014,6 +1014,13 @@ const void * lang_text_ch[] = { "终止", // WATCH_TEXT_ID_EXPERIENCE_STOP, "确定终止体验?", // WATCH_TEXT_ID_EXPERIENCE_STOP_Q, "算法初始化,请稍后", // WATCH_TEXT_ID_BLOOD_PRESSURE_INIT, + "您的性别", // WATCH_TEXT_ID_GENDER_SETTING, + "男性", // WATCH_TEXT_ID_MALE, + "女性", // WATCH_TEXT_ID_FEMALE, + "其他", // WATCH_TEXT_ID_OTHER, + "您的出生日期", // WATCH_TEXT_ID_BIRTH_DATE, + "您的身高(cm)", // WATCH_TEXT_ID_HEIGHT_SETTING, + "您的体重(kg)", // WATCH_TEXT_ID_WEIGHT_SETTING, //CHENG_MODIFY "确认是否跌倒?", // WATCH_TEXT_ID_falldown, diff --git a/2.sdk/sdk/gui/lv_watch/framework/language/lang_en.c b/2.sdk/sdk/gui/lv_watch/framework/language/lang_en.c index c7bf43ca..c9acba27 100644 --- a/2.sdk/sdk/gui/lv_watch/framework/language/lang_en.c +++ b/2.sdk/sdk/gui/lv_watch/framework/language/lang_en.c @@ -1015,6 +1015,13 @@ const void * lang_text_en[] = { "Stop", // WATCH_TEXT_ID_EXPERIENCE_STOP, "Stop the experience?", // WATCH_TEXT_ID_EXPERIENCE_STOP_Q, "Init, try again later", // WATCH_TEXT_ID_BLOOD_PRESSURE_INIT, + "Your gender", // WATCH_TEXT_ID_GENDER_SETTING, + "Male", // WATCH_TEXT_ID_MALE, + "Female", // WATCH_TEXT_ID_FEMALE, + "Other", // WATCH_TEXT_ID_OTHER, + "Date of birht", // WATCH_TEXT_ID_BIRTH_DATE, + "Your height(cm)", // WATCH_TEXT_ID_HEIGHT_SETTING, + "Your weight(kg)", // WATCH_TEXT_ID_WEIGHT_SETTING, //CHENG_MODIFY "Confirm a fall", diff --git a/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm.h b/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm.h index 8fd6fb48..91530b41 100644 --- a/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm.h +++ b/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm.h @@ -97,6 +97,9 @@ extern "C" { #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ #define NV_SECTION_UI_HENGAI_HEALTH_DATA_LEN (sizeof(nv_watch_hengai_health_data_t)) #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +#define NV_SECTION_UI_HENGAI_USER_INFO_LEN (sizeof(nv_watch_hengai_user_info_t)) +#endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ #define NV_SECTION_UI_HENGAI_TCMS_SWITCH_LEN (sizeof(nv_watch_switch_t)) #endif @@ -250,6 +253,9 @@ typedef lv_fs_dir_t ui_dir_t; #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ #define NV_SECTION_UI_HENGAI_HEALTH_DATA_FILE "ui_hengai_health_data.nv" #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +#define NV_SECTION_UI_HENGAI_USER_INFO_FILE "ui_hengai_user_info.nv" +#endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ #define NV_SECTION_UI_HENGAI_TCMS_SWITCH_FILE "ui_hengai_tcms_switch.nv" #endif diff --git a/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm_api.c b/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm_api.c index d1e1a5e9..e2dbcd38 100644 --- a/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm_api.c +++ b/2.sdk/sdk/gui/lv_watch/framework/nvm/ui_nvm_api.c @@ -160,6 +160,10 @@ uint32_t UI_NV_Get_Section_Len(NV_UI_SECTION_ID SectionId) case NV_SECTION_UI_HENGAI_HEALTH_DATA: return (NV_SECTION_LEN(NV_SECTION_UI_HENGAI_HEALTH_DATA)); #endif + #ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + case NV_SECTION_UI_HENGAI_USER_INFO: + return (NV_SECTION_LEN(NV_SECTION_UI_HENGAI_USER_INFO)); + #endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ case NV_SECTION_UI_HENGAI_TCMS_SWITCH: return (NV_SECTION_LEN(NV_SECTION_UI_HENGAI_TCMS_SWITCH)); @@ -333,6 +337,10 @@ char * UI_NV_Get_Section_path(NV_UI_SECTION_ID SectionId) case NV_SECTION_UI_HENGAI_HEALTH_DATA: return (NV_SECTION_FILE_PATH(NV_SECTION_UI_HENGAI_HEALTH_DATA)); #endif + #ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + case NV_SECTION_UI_HENGAI_USER_INFO: + return (NV_SECTION_FILE_PATH(NV_SECTION_UI_HENGAI_USER_INFO)); + #endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ case NV_SECTION_UI_HENGAI_TCMS_SWITCH: return (NV_SECTION_FILE_PATH(NV_SECTION_UI_HENGAI_TCMS_SWITCH)); @@ -442,6 +450,9 @@ uint8_t UI_NV_Reset_Default(NV_UI_SECTION_ID SectionId) #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ nv_watch_hengai_health_data_t * hengai_health; #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + nv_watch_hengai_user_info_t * hengai_user_info; +#endif #ifdef __MMI_CUSTOM_HENGAI_SLEEP_K18__ nv_watch_hengai_sleep_data_t * hengai_sleep_data; #endif @@ -792,6 +803,13 @@ uint8_t UI_NV_Reset_Default(NV_UI_SECTION_ID SectionId) TempData = (char *)hengai_health; break; #endif + #ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + case NV_SECTION_UI_HENGAI_USER_INFO: + hengai_user_info = lv_mem_alloc(SectionLen); + memset(hengai_user_info, 0x0, SectionLen); + TempData = (char *)hengai_user_info; + break; + #endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ case NV_SECTION_UI_HENGAI_TCMS_SWITCH: mmi_switch_data = lv_mem_alloc(SectionLen); diff --git a/2.sdk/sdk/gui/lv_watch/include/ui_activity_id.h b/2.sdk/sdk/gui/lv_watch/include/ui_activity_id.h index 0babf05e..8f1cdaea 100644 --- a/2.sdk/sdk/gui/lv_watch/include/ui_activity_id.h +++ b/2.sdk/sdk/gui/lv_watch/include/ui_activity_id.h @@ -219,6 +219,9 @@ enum ACT_ID_HENG_AI_BP_CALIBRATE, //ACT_ID_HENG_AI_BP_ATTEMPT, ACT_ID_HENG_AI_BP_RECORD, +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + ACT_ID_HENGAI_USER_INFO, +#endif #endif #ifdef __MMI_CUSTOM_AIGC_SUPPORT__ ACT_ID_AIGC_MAIN, diff --git a/2.sdk/sdk/gui/lv_watch/include/ui_nvm_interface.h b/2.sdk/sdk/gui/lv_watch/include/ui_nvm_interface.h index 834d64c7..ebe82835 100644 --- a/2.sdk/sdk/gui/lv_watch/include/ui_nvm_interface.h +++ b/2.sdk/sdk/gui/lv_watch/include/ui_nvm_interface.h @@ -519,6 +519,16 @@ typedef struct } __packed nv_watch_hengai_health_data_t; #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +typedef struct +{ + char user_birth_date[16]; // 2008-08-08 + uint8_t user_gender; // 1-man; 2-woman; 3-other + uint16_t user_height; // cm + uint16_t user_weight; // kg +} nv_watch_hengai_user_info_t; +#endif + #ifdef __MMI_CUSTOM_HENGAI_SLEEP_K18__ @@ -807,6 +817,9 @@ enum #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ NV_SECTION_UI_HENGAI_HEALTH_DATA, // nv_watch_hengai_health_data_t #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + NV_SECTION_UI_HENGAI_USER_INFO, // nv_watch_hengai_user_info_t +#endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ NV_SECTION_UI_HENGAI_TCMS_SWITCH, // nv_watch_switch_t #endif diff --git a/2.sdk/sdk/gui/lv_watch/include/ui_textid.h b/2.sdk/sdk/gui/lv_watch/include/ui_textid.h index 534bc4ea..7e3c46da 100644 --- a/2.sdk/sdk/gui/lv_watch/include/ui_textid.h +++ b/2.sdk/sdk/gui/lv_watch/include/ui_textid.h @@ -1022,6 +1022,13 @@ enum WATCH_TEXT_ID_EXPERIENCE_STOP, /* "终止" "Stop" */ WATCH_TEXT_ID_EXPERIENCE_STOP_Q, /* "确定终止体验?" "Stop the experience?" */ WATCH_TEXT_ID_BLOOD_PRESSURE_INIT, /* "算法初始化,请稍后" "Init, try again later" */ + WATCH_TEXT_ID_GENDER_SETTING, /* "您的性别" "Your gender" */ + WATCH_TEXT_ID_MALE, /* "男性" "Male" */ + WATCH_TEXT_ID_FEMALE, /* "女性" "Female" */ + WATCH_TEXT_ID_OTHER, /* "其他" "Other" */ + WATCH_TEXT_ID_BIRTH_DATE, /* "您的出生日期" "Date of birht" */ + WATCH_TEXT_ID_HEIGHT_SETTING, /* "您的身高(cm)" "Your height(cm)" */ + WATCH_TEXT_ID_WEIGHT_SETTING, /* "您的体重(kg)" "Your weight(kg)" */ //CHENG_MODIFY WATCH_TEXT_ID_FALLDWON, /*确认是否跌倒*/ diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.c b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.c index 3f11767a..229809d2 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.c +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.c @@ -17,6 +17,9 @@ #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ #include "heng_ai_blood_pressure.c" #include "heng_ai_http_protocol.c" +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +#include "heng_ai_user_info.c" +#endif #ifdef __MMI_CUSTOM_HENGAI_TCMS__ #include "heng_ai_tcms.c" #endif diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.h b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.h index 2ae252d6..3189740a 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.h +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/custom_function.h @@ -31,6 +31,9 @@ extern "C" { #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ #include "heng_ai_blood_pressure.h" #include "heng_ai_http_protocol.h" +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +#include "heng_ai_user_info.h" +#endif #include "heng_ai_tcms.h" #endif #ifdef __MMI_CUSTOM_AIGC_SUPPORT__ diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_blood_pressure.c b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_blood_pressure.c index 9cd88f85..d2c9717a 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_blood_pressure.c +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_blood_pressure.c @@ -629,6 +629,54 @@ void mmi_hengai_bp_back_measure_action(void) } +static void ring_prompt_audio_ctrl_callback(AUDIO_CTRL_PRIORITY priority) +{ + if(AUDIO_CTRL_PRIORITY_REMIND > priority) + { + Hal_NFFS_File_Play_End(); + Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_REMIND); + } +} + +static void ring_prompt_play_onetime_cb(void *para) +{ + Hal_NFFS_File_Play_End(); + Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_REMIND); +} + +static void mmi_bp_screen_common_ring_prompt(uint8_t is_measure, uint8_t is_begin) +{ + char * ring_path = NULL; + + if(is_measure) + { + if(is_begin) + ring_path = AUDIO_BP_MEASURE_BEGIN; + else + ring_path = AUDIO_BP_MEASURE_END; + } + else + { + // if(is_begin) + // ring_path = AUDIO_BP_CALIBRATION_BEGIN; + // else + // ring_path = AUDIO_BP_CALIBRATION_END; + } + + if(AUDIO_CTRL_PRIORITY_REMIND == Hal_Audio_Manage_Start_Req(AUDIO_CTRL_PRIORITY_REMIND, ring_prompt_audio_ctrl_callback)) + { + uint8_t volume = 0; + #ifdef __MMI_USER_PROFILE_SUPPORT__ + volume = mmi_user_profile_current_mode_remind_volume_get(); + #else + volume = query_current_volume(); + #endif + + Hal_NFFS_File_Play_Onetime((const char *)ring_path, (HAL_SPEAKER_GAIN)volume, ring_prompt_play_onetime_cb, 0); + } +} + + static lv_obj_t * mmi_bp_screen_common_bottom_button_create(lv_obj_t * par, uint32_t text_id, lv_event_cb_t event_cb) { lv_obj_t * imgbtn = lv_imgbtn_create(par, NULL); @@ -918,6 +966,9 @@ void mmi_hengai_bp_measure_result_screen(uint8_t result) } mmi_bp_screen_common_bottom_button_create(watch_ext->cont, WATCH_TEXT_ID_OK, mmi_hengai_bp_measure_result_screen_event_cb); + + // ring prompt + mmi_bp_screen_common_ring_prompt(1, 0); } void mmi_hengai_bp_measure_result_timeout(void * para) @@ -1329,6 +1380,9 @@ void mmi_hengai_bp_measure_start_btn_event_cb(lv_obj_t * obj, lv_event_t e) #endif #endif + // ring prompt + mmi_bp_screen_common_ring_prompt(1, 1); + /* start timer (1 min) */ watch_ext->measure_timer_id = Hal_Timer_Start(1000, mmi_hengai_bp_measure_cycle_timeout, NULL, true); } @@ -2994,9 +3048,9 @@ lv_obj_t * mmi_heng_ai_bp_screen_create(lv_obj_t * activity_obj) if(NULL == ext->tab_calibration_record) return NULL; - if(0 == mmi_hengai_bp_calibrated_flag_get()) - lv_tileview_set_tile_act(tileview, 1, 0, LV_ANIM_OFF); - else + // if(0 == mmi_hengai_bp_calibrated_flag_get()) + // lv_tileview_set_tile_act(tileview, 1, 0, LV_ANIM_OFF); + // else lv_tileview_set_tile_act(tileview, 0, 0, LV_ANIM_OFF); lv_watch_obj_add_element(tileview); diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_http_protocol.c b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_http_protocol.c index cec49015..d41d4b80 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_http_protocol.c +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_http_protocol.c @@ -1266,6 +1266,20 @@ void mmi_hengai_tcp_algorithm_interface_login_action(void) temp_len += sprintf(json_data + temp_len, "\"password\":\"%s\",", imei); + #ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + uint8_t user_gender = mmi_hengai_user_info_gender_get(); + temp_len += sprintf(json_data + temp_len, "\"gender\":\"%d\",", user_gender); + + char * user_birth_date = mmi_hengai_user_info_birth_date_get(); + temp_len += sprintf(json_data + temp_len, "\"birthday\":\"%s\",", user_birth_date); + + uint16_t user_height = mmi_hengai_user_info_height_get(); + temp_len += sprintf(json_data + temp_len, "\"height\":\"%d\",", user_height); + + uint16_t user_weight = mmi_hengai_user_info_weight_get(); + temp_len += sprintf(json_data + temp_len, "\"weight\":\"%d\"}", user_weight); + + #else temp_len += sprintf(json_data + temp_len, "\"gender\":\"%d\",", 3); temp_len += sprintf(json_data + temp_len, "\"birthday\":\"%s\",", "2000-10-01"); @@ -1273,6 +1287,7 @@ void mmi_hengai_tcp_algorithm_interface_login_action(void) temp_len += sprintf(json_data + temp_len, "\"height\":\"%d\",", 180); temp_len += sprintf(json_data + temp_len, "\"weight\":\"%d\"}", 80); + #endif HENGAI_HEALTH_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %d\n", __FUNCTION__, __LINE__, temp_len); diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.c b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.c new file mode 100644 index 00000000..1aedbb23 --- /dev/null +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.c @@ -0,0 +1,903 @@ + + + +#include "lv_watch.h" + +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + +static nv_watch_hengai_user_info_t s_hengai_user_info = {0}; + +static uint8_t s_gender_value = 0; +static uint16_t s_birth_date_year = 0, s_birth_date_month = 0, s_birth_date_day = 0; +static uint8_t s_height_hundred = 0, s_height_ten = 0, s_height_digit = 0; +static uint8_t s_weight_hundred = 0, s_weight_ten = 0, s_weight_digit = 0; + + +#ifdef __MMI_ZHSX_SUPPORT__ +static bool s_is_ACT_ID_HENGAI_USER_INFO = false; + +bool mmi_is_ACT_ID_HENGAI_USER_INFO(void) +{ + return s_is_ACT_ID_HENGAI_USER_INFO; +} +#endif + + +void mmi_hengai_user_info_nv_read(void) +{ + uint32_t nv_data_length = sizeof(nv_watch_hengai_user_info_t); + + if(nv_data_length != UI_NV_Read_Req(NV_SECTION_UI_HENGAI_USER_INFO, 0, nv_data_length, (uint8_t *)&s_hengai_user_info)) + { + printf("[@CHENG_DEBUG][%s][%d]: nv read fail\n", __FUNCTION__, __LINE__); + } +} + +static void mmi_hengai_user_info_nv_write(void) +{ + uint32_t nv_data_length = sizeof(nv_watch_hengai_user_info_t); + + if(nv_data_length != UI_NV_Write_Req(NV_SECTION_UI_HENGAI_USER_INFO, 0, nv_data_length, (uint8_t *)&s_hengai_user_info)) + { + printf("[@CHENG_DEBUG][%s][%d]: nv write fail\n", __FUNCTION__, __LINE__); + } +} + + +uint8_t mmi_hengai_user_info_gender_get(void) +{ + return (s_hengai_user_info.user_gender); +} + +void mmi_hengai_user_info_gender_set(uint8_t user_gender) +{ + if(1 == user_gender || 2 == user_gender || 3 == user_gender) + { + s_hengai_user_info.user_gender = user_gender; + } +} + +char * mmi_hengai_user_info_birth_date_get(void) +{ + return (s_hengai_user_info.user_birth_date); +} + +void mmi_hengai_user_info_birth_date_set(char * user_birth_date) +{ + if(NULL == user_birth_date) + return ; + + _lv_memcpy(s_hengai_user_info.user_birth_date, user_birth_date, strlen(user_birth_date)); +} + +uint16_t mmi_hengai_user_info_height_get(void) +{ + return (s_hengai_user_info.user_height); +} + +void mmi_hengai_user_info_height_set(uint16_t user_height) +{ + s_hengai_user_info.user_height = user_height; +} + +uint16_t mmi_hengai_user_info_weight_get(void) +{ + return (s_hengai_user_info.user_weight); +} + +void mmi_hengai_user_info_weight_set(uint16_t user_weight) +{ + s_hengai_user_info.user_weight = user_weight; +} + + +void * mmi_hengai_user_info_setting_screen_ext_get(void) +{ + lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_HENGAI_USER_INFO); + if(activity_obj == NULL) + return NULL; + + lv_obj_t * watch_obj = NULL; + lv_watch_get_child_obj(activity_obj, lv_watch_obj_signal, &watch_obj); + if(NULL == watch_obj) + return NULL; + + void * ext = lv_obj_get_ext_attr(watch_obj); + + return ext; +} + +static void mmi_hengai_user_info_setting_screen_prepare_destory(lv_obj_t * activity_obj) +{ + lv_watch_png_cache_all_free(); + +#ifdef __MMI_ZHSX_SUPPORT__ + s_is_ACT_ID_HENGAI_USER_INFO = false; +#endif +} + +static void mmi_hengai_user_info_setting_screen_clean(void) +{ + lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_HENGAI_USER_INFO); + if(NULL != activity_obj) + { + mmi_hengai_user_info_setting_screen_prepare_destory(activity_obj); + lv_obj_del(activity_obj); + } +} + +static void mmi_hengai_user_info_setting_ok_btn_event_cb(lv_obj_t * obj, lv_event_t e) +{ + if(LV_EVENT_CLICKED != e) + return; + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)mmi_hengai_user_info_setting_screen_ext_get(); + if(NULL == ext) + return; + + uint32_t free_num = lv_watch_get_free_num(obj); + if(1 == free_num) + { + // next + lv_obj_set_hidden(ext->cont, true); + lv_obj_set_hidden(ext->cont_gender, true); + lv_obj_set_hidden(ext->cont_birth_date, false); + lv_obj_set_hidden(ext->cont_height, true); + lv_obj_set_hidden(ext->cont_weight, true); + } + else if(2 == free_num) + { + // next + lv_obj_set_hidden(ext->cont, true); + lv_obj_set_hidden(ext->cont_gender, true); + lv_obj_set_hidden(ext->cont_birth_date, true); + lv_obj_set_hidden(ext->cont_height, false); + lv_obj_set_hidden(ext->cont_weight, true); + } + else if(3 == free_num) + { + // next + lv_obj_set_hidden(ext->cont, true); + lv_obj_set_hidden(ext->cont_gender, true); + lv_obj_set_hidden(ext->cont_birth_date, true); + lv_obj_set_hidden(ext->cont_height, true); + lv_obj_set_hidden(ext->cont_weight, false); + } + else + { + // set + char temp_str[16] = {0}; + uint16_t temp_value = 0; + + mmi_hengai_user_info_gender_set(s_gender_value + 1); + + sprintf(temp_str, "%d-%02d-%02d", s_birth_date_year, s_birth_date_month, s_birth_date_day); + mmi_hengai_user_info_birth_date_set(temp_str); + + temp_value = s_height_hundred * 100 + s_height_ten * 10 + s_height_digit; + mmi_hengai_user_info_height_set(temp_value); + + temp_value = s_weight_hundred * 100 + s_weight_ten * 10 + s_weight_digit; + mmi_hengai_user_info_weight_set(temp_value); + + // save + mmi_hengai_user_info_nv_write(); + + // clean + mmi_hengai_user_info_setting_screen_clean(); + } +} + +static lv_obj_t * mmi_hengai_user_info_setting_ok_btn_create(lv_obj_t * par) +{ + lv_obj_t * imgbtn = lv_imgbtn_create(par, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_BOTTOM_BTN_BG); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_BOTTOM_BTN_BG); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, 0); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_ok_btn_event_cb); + + lv_obj_t * btn_label = lv_label_create(imgbtn, NULL); + lv_obj_add_style(btn_label, LV_LABEL_PART_MAIN, &lv_watch_font32); + lv_label_set_align(btn_label, LV_LABEL_ALIGN_CENTER); + lv_label_set_text_id(btn_label, WATCH_TEXT_ID_OK); + lv_obj_align(btn_label, NULL, LV_ALIGN_CENTER, 0, 0); + + return imgbtn; +} + + +// user gender +void mmi_hengai_user_info_setting_gender_btn_event_cb(lv_obj_t * obj, lv_event_t e) +{ + if(LV_EVENT_CLICKED != e) + return; + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)mmi_hengai_user_info_setting_screen_ext_get(); + if(NULL == ext) + return; + + uint32_t text_id_arr[] = {WATCH_TEXT_ID_MALE, WATCH_TEXT_ID_FEMALE, WATCH_TEXT_ID_OTHER}; + uint8_t arr_num = sizeof(text_id_arr) / sizeof(text_id_arr[0]); + uint32_t free_num = lv_watch_get_free_num(obj); + if(0 == free_num) + { + if(0 == s_gender_value) + s_gender_value = arr_num - 1; + else + s_gender_value--; + } + else + { + if((arr_num - 1) == s_gender_value) + s_gender_value = 0; + else + s_gender_value++; + } + + lv_label_set_text_id(ext->label_gender, text_id_arr[s_gender_value]); +} + +void mmi_hengai_user_info_setting_gender_cont(lv_hengai_user_info_ext_t * ext) +{ + s_gender_value = 0; + + lv_obj_t * cont = ext->cont_gender; + + lv_obj_t * label_title = lv_label_create(cont, NULL); + lv_obj_add_style(label_title, LV_LABEL_PART_MAIN, &lv_watch_font32); + lv_label_set_align(label_title, LV_LABEL_ALIGN_CENTER); + lv_label_set_text_id(label_title, WATCH_TEXT_ID_GENDER_SETTING); + lv_obj_align(label_title, NULL, LV_ALIGN_IN_TOP_MID, 0, 48); + lv_obj_set_click(label_title, false); + + + lv_obj_t * imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_L_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_L_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_LEFT_MID, 50, -10); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_gender_btn_event_cb); + lv_watch_set_free_num(imgbtn, 0); + + lv_obj_t * label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + lv_label_set_long_mode(label, LV_LABEL_LONG_BREAK); + lv_obj_set_width(label, 150); + lv_label_set_text_id(label, WATCH_TEXT_ID_MALE); + lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, -15); + ext->label_gender = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_R_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_R_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_RIGHT_MID, -50, -10); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_gender_btn_event_cb); + lv_watch_set_free_num(imgbtn, 1); + + // ok + lv_obj_t * btn = mmi_hengai_user_info_setting_ok_btn_create(cont); + lv_watch_set_free_num(btn, 1); +} + + +//user birth date +void mmi_hengai_user_info_setting_birth_date_btn_event_cb(lv_obj_t * obj, lv_event_t e) +{ + if(LV_EVENT_CLICKED != e) + return; + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)mmi_hengai_user_info_setting_screen_ext_get(); + if(NULL == ext) + return; + + lv_obj_t * label = NULL; + char temp_str[4] = {0}; + //hal_rtc_t cur_time = {0}; + + //Hal_Rtc_Gettime(&cur_time); + + uint32_t free_num = lv_watch_get_free_num(obj); + if(0 == free_num) // year up + { + //(cur_time.tm_year > s_birth_date_year) ? s_birth_date_year++ : NULL; + (2050 > s_birth_date_year) ? s_birth_date_year++ : NULL; + sprintf(temp_str, "%d", s_birth_date_year); + label = ext->label_year; + } + else if(1 == free_num) // year down + { + (1921 < s_birth_date_year) ? s_birth_date_year-- : NULL; + sprintf(temp_str, "%d", s_birth_date_year); + label = ext->label_year; + } + else if(2 == free_num) // month up + { + //if(cur_time.tm_year == s_birth_date_year) + // (cur_time.tm_mon > s_birth_date_month) ? s_birth_date_month++ : NULL; + //else + (12 > s_birth_date_month) ? s_birth_date_month++ : NULL; + sprintf(temp_str, "%d", s_birth_date_month); + label = ext->label_month; + } + else if(3 == free_num) // month down + { + (1 < s_birth_date_month) ? s_birth_date_month-- : NULL; + sprintf(temp_str, "%d", s_birth_date_month); + label = ext->label_month; + } + else if(4 == free_num) // day up + { + uint16_t day_max = 0; + + //if(cur_time.tm_year == s_birth_date_year && cur_time.tm_mon == s_birth_date_month) + // day_max = cur_time.tm_mday; + //else + { + if(1 == s_birth_date_month || 3 == s_birth_date_month || 5 == s_birth_date_month || 7 == s_birth_date_month + || 8 == s_birth_date_month || 10 == s_birth_date_month || 12 == s_birth_date_month) + day_max = 31; + else if(2 == s_birth_date_month) + { + if((0 == s_birth_date_year%4) && (0 != s_birth_date_year%100) || (0 == s_birth_date_year%400)) + day_max = 29; + else + day_max = 28; + } + else + day_max = 30; + } + (day_max > s_birth_date_day) ? s_birth_date_day++ : NULL; + sprintf(temp_str, "%d", s_birth_date_day); + label = ext->label_day; + } + else if(5 == free_num) // day down + { + (1 < s_birth_date_day) ? s_birth_date_day-- : NULL; + sprintf(temp_str, "%d", s_birth_date_day); + label = ext->label_day; + } + + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + lv_label_set_text(label, temp_str); +} + +void mmi_hengai_user_info_setting_birth_date_cont(lv_hengai_user_info_ext_t * ext) +{ + s_birth_date_year = 2000, s_birth_date_month = 1, s_birth_date_day = 1; + + lv_obj_t * cont = ext->cont_birth_date; + + lv_obj_t * label_title = lv_label_create(cont, NULL); + lv_obj_add_style(label_title, LV_LABEL_PART_MAIN, &lv_watch_font32); + lv_label_set_align(label_title, LV_LABEL_ALIGN_CENTER); + lv_label_set_text_id(label_title, WATCH_TEXT_ID_BIRTH_DATE); + lv_obj_align(label_title, NULL, LV_ALIGN_IN_TOP_MID, 0, 48); + lv_obj_set_click(label_title, false); + + + lv_obj_t * label = NULL; + lv_obj_t * imgbtn = NULL; + char temp_str[8] = {0}; + + // year + //label = lv_label_create(cont, NULL); + //lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font24); + //lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + //lv_label_set_text_id(label, WATCH_TEXT_ID_YEAR); + //lv_obj_align(label, NULL, LV_ALIGN_IN_TOP_LEFT, 50, 120); + //lv_obj_set_click(label, false); + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_LEFT, 55, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 0); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_birth_date_year); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_year = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 1); + + + // month + //label = lv_label_create(cont, NULL); + //lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font24); + //lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + //lv_label_set_text_id(label, WATCH_TEXT_ID_MONTH); + //lv_obj_align(label, NULL, LV_ALIGN_IN_TOP_LEFT, 200, 100); + //lv_obj_set_click(label, false); + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_MID, 5, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 2); + + label = lv_label_create(cont, NULL); + + lv_label_set_long_mode(label, LV_LABEL_LONG_BREAK); + lv_obj_set_size(label, 80, 65); + + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_birth_date_month); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_month = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 3); + + + // day + //label = lv_label_create(cont, NULL); + //lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font24); + //lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + //lv_label_set_text_id(label, WATCH_TEXT_ID_DATE); + //lv_obj_align(label, NULL, LV_ALIGN_IN_TOP_LEFT, 380, 100); + //lv_obj_set_click(label, false); + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_RIGHT, -50, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 4); + + label = lv_label_create(cont, NULL); + + lv_label_set_long_mode(label, LV_LABEL_LONG_BREAK); + lv_obj_set_size(label, 80, 65); + + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_birth_date_day); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_day = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_birth_date_btn_event_cb); + lv_watch_set_free_num(imgbtn, 5); + + + lv_obj_t * btn = mmi_hengai_user_info_setting_ok_btn_create(cont); + lv_watch_set_free_num(btn, 2); +} + + +// user height +void mmi_hengai_user_info_setting_height_btn_event_cb(lv_obj_t * obj, lv_event_t e) +{ + if(LV_EVENT_CLICKED != e) + return; + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)mmi_hengai_user_info_setting_screen_ext_get(); + if(NULL == ext) + return; + + lv_obj_t * label = NULL; + char temp_str[4] = {0}; + + uint32_t free_num = lv_watch_get_free_num(obj); + if(0 == free_num) // hundred up + { + (2 > s_height_hundred) ? s_height_hundred++ : NULL; + sprintf(temp_str, "%d", s_height_hundred); + label = ext->label_height_hundred; + } + else if(1 == free_num) // hundred down + { + (0 < s_height_hundred) ? s_height_hundred-- : NULL; + sprintf(temp_str, "%d", s_height_hundred); + label = ext->label_height_hundred; + } + else if(2 == free_num) // ten up + { + (9 > s_height_ten) ? s_height_ten++ : NULL; + sprintf(temp_str, "%d", s_height_ten); + label = ext->label_height_ten; + } + else if(3 == free_num) // ten down + { + (0 < s_height_ten) ? s_height_ten-- : NULL; + sprintf(temp_str, "%d", s_height_ten); + label = ext->label_height_ten; + } + else if(4 == free_num) // digit up + { + (9 > s_height_digit) ? s_height_digit++ : NULL; + sprintf(temp_str, "%d", s_height_digit); + label = ext->label_height_digit; + } + else if(5 == free_num) // digit down + { + (0 < s_height_digit) ? s_height_digit-- : NULL; + sprintf(temp_str, "%d", s_height_digit); + label = ext->label_height_digit; + } + + lv_label_set_text(label, temp_str); +} + +void mmi_hengai_user_info_setting_height_cont(lv_hengai_user_info_ext_t * ext) +{ + s_height_hundred = 1, s_height_ten = 6, s_height_digit = 5; + + lv_obj_t * cont = ext->cont_height; + + lv_obj_t * label_title = lv_label_create(cont, NULL); + lv_obj_add_style(label_title, LV_LABEL_PART_MAIN, &lv_watch_font32); + lv_label_set_align(label_title, LV_LABEL_ALIGN_CENTER); + lv_label_set_text_id(label_title, WATCH_TEXT_ID_HEIGHT_SETTING); + lv_obj_align(label_title, NULL, LV_ALIGN_IN_TOP_MID, 0, 48); + lv_obj_set_click(label_title, false); + + + lv_obj_t * label = NULL; + lv_obj_t * imgbtn = NULL; + char temp_str[4] = {0}; + + // hundred + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_LEFT, 50, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 0); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_height_hundred); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_height_hundred = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 1); + + + // ten + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_MID, 0, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 2); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_height_ten); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_height_ten = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 3); + + + // digit + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_RIGHT, -50, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 4); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_height_digit); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_height_digit = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_height_btn_event_cb); + lv_watch_set_free_num(imgbtn, 5); + + + lv_obj_t * btn = mmi_hengai_user_info_setting_ok_btn_create(cont); + lv_watch_set_free_num(btn, 3); +} + +// user weight +void mmi_hengai_user_info_setting_weight_btn_event_cb(lv_obj_t * obj, lv_event_t e) +{ + if(LV_EVENT_CLICKED != e) + return; + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)mmi_hengai_user_info_setting_screen_ext_get(); + if(NULL == ext) + return; + + lv_obj_t * label = NULL; + char temp_str[4] = {0}; + + uint32_t free_num = lv_watch_get_free_num(obj); + if(0 == free_num) // hundred up + { + (2 > s_weight_hundred) ? s_weight_hundred++ : NULL; + sprintf(temp_str, "%d", s_weight_hundred); + label = ext->label_weight_hundred; + } + else if(1 == free_num) // hundred down + { + (0 < s_weight_hundred) ? s_weight_hundred-- : NULL; + sprintf(temp_str, "%d", s_weight_hundred); + label = ext->label_weight_hundred; + } + else if(2 == free_num) // ten up + { + (9 > s_weight_ten) ? s_weight_ten++ : NULL; + sprintf(temp_str, "%d", s_weight_ten); + label = ext->label_weight_ten; + } + else if(3 == free_num) // ten down + { + (0 < s_weight_ten) ? s_weight_ten-- : NULL; + sprintf(temp_str, "%d", s_weight_ten); + label = ext->label_weight_ten; + } + else if(4 == free_num) // digit up + { + (9 > s_weight_digit) ? s_weight_digit++ : NULL; + sprintf(temp_str, "%d", s_weight_digit); + label = ext->label_weight_digit; + } + else if(5 == free_num) // digit down + { + (0 < s_weight_digit) ? s_weight_digit-- : NULL; + sprintf(temp_str, "%d", s_weight_digit); + label = ext->label_weight_digit; + } + + lv_label_set_text(label, temp_str); +} +void mmi_hengai_user_info_setting_weight_cont(lv_hengai_user_info_ext_t * ext) +{ + s_weight_hundred = 0, s_weight_ten = 6, s_weight_digit = 5; + + lv_obj_t * cont = ext->cont_weight; + + lv_obj_t * label_title = lv_label_create(cont, NULL); + lv_obj_add_style(label_title, LV_LABEL_PART_MAIN, &lv_watch_font32); + lv_label_set_align(label_title, LV_LABEL_ALIGN_CENTER); + lv_label_set_text_id(label_title, WATCH_TEXT_ID_WEIGHT_SETTING); + lv_obj_align(label_title, NULL, LV_ALIGN_IN_TOP_MID, 0, 48); + lv_obj_set_click(label_title, false); + + + lv_obj_t * label = NULL; + lv_obj_t * imgbtn = NULL; + char temp_str[4] = {0}; + + // hundred + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_LEFT, 50, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 0); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_weight_hundred); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_weight_hundred = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 1); + + + // ten + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_MID, 0, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 2); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_weight_ten); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_weight_ten = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 3); + + + // digit + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_UP_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_UP_ARROW); + lv_obj_align(imgbtn, NULL, LV_ALIGN_IN_TOP_RIGHT, -50, 120); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 4); + + label = lv_label_create(cont, NULL); + lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font60); + lv_label_set_align(label, LV_LABEL_ALIGN_CENTER); + sprintf(temp_str, "%d", s_weight_digit); + lv_label_set_text(label, temp_str); + lv_obj_align(label, imgbtn, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_set_click(label, false); + ext->label_weight_digit = label; + + imgbtn = lv_imgbtn_create(cont, NULL); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_RELEASED, ICON_HENGAI_BP_DOWN_ARROW); + lv_imgbtn_set_src(imgbtn, LV_BTN_STATE_PRESSED, ICON_HENGAI_BP_DOWN_ARROW); + lv_obj_align(imgbtn, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); // 20); + lv_obj_set_event_cb(imgbtn, mmi_hengai_user_info_setting_weight_btn_event_cb); + lv_watch_set_free_num(imgbtn, 5); + + + lv_obj_t * btn = mmi_hengai_user_info_setting_ok_btn_create(cont); + lv_watch_set_free_num(btn, 4); +} + + +lv_obj_t * mmi_hengai_user_info_setting_screen_create(lv_obj_t * activity_obj) +{ + if(activity_obj == NULL) + { + lv_watch_activity_ext_t activity_ext = {0}; + + activity_ext.actId = ACT_ID_HENGAI_USER_INFO; + activity_ext.create = mmi_hengai_user_info_setting_screen_create; + activity_ext.prepare_destory = mmi_hengai_user_info_setting_screen_prepare_destory; + activity_obj = lv_watch_creat_activity_obj(&activity_ext); + if(NULL == activity_obj) + return NULL; + } + +#ifdef __MMI_ZHSX_SUPPORT__ + s_is_ACT_ID_HENGAI_USER_INFO = true; +#endif + + lv_obj_t * watch_obj = lv_watch_obj_create(activity_obj); + if(NULL == watch_obj) + return NULL; + lv_watch_obj_set_anim_mode(watch_obj, LV_WATCH_ANIM_NO); + + lv_hengai_user_info_ext_t * ext = (lv_hengai_user_info_ext_t *)lv_obj_allocate_ext_attr(watch_obj, sizeof(lv_hengai_user_info_ext_t)); + if(NULL == ext) + return NULL; + + ext->cont = NULL; + ext->cont_gender = NULL; + ext->label_gender = NULL; + ext->cont_birth_date = NULL; + ext->label_year = NULL; + ext->label_month = NULL; + ext->label_day = NULL; + ext->cont_height = NULL; + ext->label_height_hundred = NULL; + ext->label_height_ten = NULL; + ext->label_height_digit = NULL; + ext->cont_weight = NULL; + ext->label_weight_hundred = NULL; + ext->label_weight_ten = NULL; + ext->label_weight_digit = NULL; + + lv_obj_t * cont = NULL; + cont = lv_cont_create(watch_obj, NULL); + lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES); + //lv_obj_add_style(cont, LV_CONT_PART_MAIN, &lv_style_transp_tight); + lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK); + lv_obj_set_click(cont, false); + ext->cont = cont; + + cont = lv_cont_create(watch_obj, NULL); + lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES); + lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK); + lv_obj_set_click(cont, false); + ext->cont_gender = cont; + mmi_hengai_user_info_setting_gender_cont(ext); + + cont = lv_cont_create(watch_obj, NULL); + lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES); + lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK); + lv_obj_set_click(cont, false); + ext->cont_birth_date = cont; + mmi_hengai_user_info_setting_birth_date_cont(ext); + + cont = lv_cont_create(watch_obj, NULL); + lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES); + lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK); + lv_obj_set_click(cont, false); + ext->cont_height = cont; + mmi_hengai_user_info_setting_height_cont(ext); + + cont = lv_cont_create(watch_obj, NULL); + lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES); + lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK); + lv_obj_set_click(cont, false); + ext->cont_weight = cont; + mmi_hengai_user_info_setting_weight_cont(ext); + + + lv_obj_set_hidden(ext->cont, true); + lv_obj_set_hidden(ext->cont_gender, false); + lv_obj_set_hidden(ext->cont_birth_date, true); + lv_obj_set_hidden(ext->cont_height, true); + lv_obj_set_hidden(ext->cont_weight, true); + + // + //watch_set_suspend_enable(false, ACT_ID_HENG_AI_BP_CALIBRATE, 0); + + return watch_obj; +} + +uint8_t mmi_hengai_user_info_setting_enter(void) +{ + uint8_t user_gender = mmi_hengai_user_info_gender_get(); + char * user_birth_date = mmi_hengai_user_info_birth_date_get(); + uint16_t user_height = mmi_hengai_user_info_height_get(); + uint16_t user_weight = mmi_hengai_user_info_weight_get(); + + if((0 != user_gender) && (0 != strlen(user_birth_date)) && (0 != user_height) && (0 != user_weight)) + { + return 0; + } + + mmi_hengai_user_info_setting_screen_create(NULL); + + return 1; +} + +#endif + diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.h b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.h new file mode 100644 index 00000000..1c663b45 --- /dev/null +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_user_info.h @@ -0,0 +1,67 @@ + + + +#ifndef __HENG_AI_USER_INFO_H__ +#define __HENG_AI_USER_INFO_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef LV_CONF_INCLUDE_SIMPLE +#include "lvgl.h" +#include "lv_ex_conf.h" +#else +#include "../../../lvgl/lvgl.h" +#include "../../../lv_ex_conf.h" +#endif + +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + + +typedef struct +{ + lv_watch_obj_ext_t lv_watch_obj; + + /*New data for this type */ + lv_obj_t * cont; + lv_obj_t * cont_gender; + lv_obj_t * label_gender; + lv_obj_t * cont_birth_date; + lv_obj_t * label_year; + lv_obj_t * label_month; + lv_obj_t * label_day; + lv_obj_t * cont_height; + lv_obj_t * label_height_hundred; + lv_obj_t * label_height_ten; + lv_obj_t * label_height_digit; + lv_obj_t * cont_weight; + lv_obj_t * label_weight_hundred; + lv_obj_t * label_weight_ten; + lv_obj_t * label_weight_digit; +}lv_hengai_user_info_ext_t; + + +bool mmi_is_ACT_ID_HENGAI_USER_INFO(void); + +void mmi_hengai_user_info_nv_read(void); + +uint8_t mmi_hengai_user_info_gender_get(void); + +char * mmi_hengai_user_info_birth_date_get(void); + +uint16_t mmi_hengai_user_info_height_get(void); + +uint16_t mmi_hengai_user_info_weight_get(void); + +uint8_t mmi_hengai_user_info_setting_enter(void); + + +#endif + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif + diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/sos/sos.c b/2.sdk/sdk/gui/lv_watch/lv_apps/sos/sos.c index 069a1b18..df7f9519 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/sos/sos.c +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/sos/sos.c @@ -313,6 +313,13 @@ lv_res_t mmi_key_back_sos_btn_action(void) return LV_RES_INV; #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + if(true == mmi_is_ACT_ID_HENGAI_USER_INFO()) + { + return LV_RES_INV; + } +#endif + if(false == watch_modem_sim_present_check_req()) { printf("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__); diff --git a/2.sdk/sdk/gui/lv_watch/lv_watch.c b/2.sdk/sdk/gui/lv_watch/lv_watch.c index 8be863a2..b404c9d0 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_watch.c +++ b/2.sdk/sdk/gui/lv_watch/lv_watch.c @@ -106,6 +106,9 @@ static void mmi_data_init_before_watch_create(void) #ifdef __MMI_CUSTOM_HENGAI_HEALTH__ mmi_hengai_health_data_nv_read(); +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + mmi_hengai_user_info_nv_read(); +#endif #endif #ifdef __MMI_CUSTOM_HENG_AI__ mmi_hengai_sleep_activation_nv_read(); @@ -610,6 +613,10 @@ static lv_obj_t * watch_create(bool silentReset) mmi_data_init_after_watch_create(); #endif +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + mmi_hengai_user_info_setting_enter(); +#endif + return obj; } diff --git a/2.sdk/sdk/gui/lv_watch/lv_watch_res.h b/2.sdk/sdk/gui/lv_watch/lv_watch_res.h index a8e923c2..376abd75 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_watch_res.h +++ b/2.sdk/sdk/gui/lv_watch/lv_watch_res.h @@ -72,6 +72,13 @@ extern "C" { #define AUDIO_REMIND_SEDENTARY "R:/audio/AUDIO_REMIND_SEDENTARY.mp3" #endif +#ifdef __MMI_CUSTOM_HENGAI_HEALTH__ +#define AUDIO_BP_MEASURE_BEGIN "R:/audio/AUDIO_BP_MEASURE_BEGIN.mp3" +#define AUDIO_BP_MEASURE_END "R:/audio/AUDIO_BP_MEASURE_END.mp3" +//#define AUDIO_BP_CALIBRATION_BEGIN "R:/audio/AUDIO_BP_CALIBRATION_BEGIN.mp3" +//#define AUDIO_BP_CALIBRATION_END "R:/audio/AUDIO_BP_CALIBRATION_END.mp3" +#endif + #ifdef __MMI_PAGE_MAIN_MENU_TTS_SUPPORT__ @@ -1097,6 +1104,10 @@ LV_IMG_DECLARE(img_poweron_logo); #define ANIM_HENGAI_BP_ATTEMPT "R:/gif/custom_function/ANIM_HENGAI_BP_ATTEMPT.gif" #define ANIM_HENGAI_BP_WAITTING "R:/gif/custom_function/ANIM_HENGAI_BP_WAITTING.gif" +#ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ +#define ICON_HENGAI_BP_L_ARROW "R:/png/custom_function/ICON_HENGAI_BP_L_ARROW.png" +#define ICON_HENGAI_BP_R_ARROW "R:/png/custom_function/ICON_HENGAI_BP_R_ARROW.png" +#endif #endif diff --git a/2.sdk/sdk/product/craneg_modem/lv_gui_main.c b/2.sdk/sdk/product/craneg_modem/lv_gui_main.c index 099b214e..bc5a9e13 100644 --- a/2.sdk/sdk/product/craneg_modem/lv_gui_main.c +++ b/2.sdk/sdk/product/craneg_modem/lv_gui_main.c @@ -1018,6 +1018,13 @@ static void keypad_watch_cb(struct keypad_param *arg) } #endif + #ifdef __MMI_CUSTOM_HENGAI_USER_INFO__ + if(true == mmi_is_ACT_ID_HENGAI_USER_INFO()) + { + return ; + } + #endif + lv_obj_t * facau_obj = lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_AUTOTEST); lv_obj_t * emht_obj = lv_watch_get_activity_obj(ACT_ID_ENGINEER_MODE_ITEM_HWT); if(NULL != facau_obj) {