解决喝水提醒不弹出问题
authorluozheng <1732036298@qq.com>
Thu, 29 Jan 2026 10:38:19 +0000 (18:38 +0800)
committerluozheng <1732036298@qq.com>
Thu, 29 Jan 2026 10:38:19 +0000 (18:38 +0800)
code/sdk/application/wearable/fd272/nativeapp/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp
code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/src/TraingModel.cpp
code/sdk/zhihui/services/ble_service/blemoder/ble_congfig_adapt.cpp
code/sdk/zhihui/services/ble_service/bleservice/bleEvent.c

index 6ffaf7e..e6d41d1 100644 (file)
@@ -136,7 +136,7 @@ extern "C"
 \r
     void set_drinkreminder_data(void)\r
     {\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "set_drinkreminder_data");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "set_drinkreminder_data");\r
         drinkreminder_switch = OHOS::ConfigModel::GetInstance()->GetDrinkSwitch();\r
         drinkreminder_freq = OHOS::ConfigModel::GetInstance()->GetDrinkFreq();\r
         drinkreminder_goal = OHOS::ConfigModel::GetInstance()->GetDrinkGoal();\r
@@ -148,12 +148,12 @@ extern "C"
         // 解析开始时间\r
         drinkreminder_start_hour = (drinkreminder_start_time & 0XFFFF0000) >> 16; // 前16位是小时\r
         drinkreminder_start_min = drinkreminder_start_time & 0X0000FFFF;          // 后16位是分钟\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "%d:%d", drinkreminder_start_hour, drinkreminder_start_min);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "喝水开始时间:(%d:%d)", drinkreminder_start_hour, drinkreminder_start_min);\r
 \r
         // 解析结束时间\r
         drinkreminder_end_hour = (drinkreminder_end_time & 0XFFFF0000) >> 16; // 前16位是小时\r
         drinkreminder_end_min = drinkreminder_end_time & 0x0000FFFF;          // 后16位是分钟\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "%d:%d", drinkreminder_end_hour, drinkreminder_end_min);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "喝水结束时间:(%d:%d)", drinkreminder_end_hour, drinkreminder_end_min);\r
 \r
         if (drinkreminder_switch == 2)\r
         {\r
index 2df1f6f..fdb904d 100644 (file)
   WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "spc %d", sportdata->spc);
  
  
-#if 0
+#if 1
    // 心率提醒 目前取值有问题,暂时关闭
    if (sportdata->heart >= user_maxHeart && user_maxHeart != 0) {
      uapi_set_screen_on_api(); // 亮屏检测
      if (true != OHOS::ConfigModel::GetInstance()->GetDnotdisturb() &&
          (!uapi_sleep_mode_flag_get())) {
        custom_VibratorFunc_int(5);
+       custom_VibratorFunc_int(5);
      }
      if (TraingCardView::GetInstance()) {
        GraphicService::GetInstance()->PostGraphicEvent(
@@ -1286,6 +1287,7 @@ void TraingModel::SetSportdata(SportData *data) {
        uapi_set_screen_on_api(); // 亮屏检测
        if (!OHOS::ConfigModel::GetInstance()->GetDnotdisturb()) {
          custom_VibratorFunc_int(5); // 震动提示
+         custom_VibratorFunc_int(5); // 震动提示
        }
        if (TraingCardView::GetInstance()) {
          GraphicService::GetInstance()->PostGraphicEvent(
@@ -1311,6 +1313,7 @@ void TraingModel::SetSportdata(SportData *data) {
      uapi_set_screen_on_api(); // 亮屏检测
      if (!OHOS::ConfigModel::GetInstance()->GetDnotdisturb()) {
        custom_VibratorFunc_int(5); // 震动提示
+       custom_VibratorFunc_int(5); // 震动提示
      }
      if (TraingCardView::GetInstance()) {
        GraphicService::GetInstance()->PostGraphicEvent(
@@ -1935,6 +1938,7 @@ bool TraingModel::GetMomentum() {
    if ((sportdata->goaldegree >= 100) && (shock_count < 4)) {
      shock_count++;
      custom_VibratorFunc_int(5); // 触发振动反馈
+     custom_VibratorFunc_int(5);
      WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "触发了振动。振动计数: %d",
                    shock_count);
    }
index 0ba826e..e481a9b 100644 (file)
@@ -144,19 +144,19 @@ void ble_get_sleep_remind_(msg_get_sleep_param_info_t *data)
 void ble_set_drink_remind_(msg_drink_info_t data)
 {
     OHOS::ConfigModel *p_ConfigModel  =   OHOS::ConfigModel::GetInstance();
-    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"开关:%d\r\n",data.drink_on);
+    WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"开关:%d\r\n",data.drink_on);
     p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_DRINK,data.drink_on);
     if(data.drink_on)
     {
-          WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"目标:%d\r\n",data.goal);
+        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"目标:%d\r\n",data.goal);
         p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_DRINK_GOAL,data.goal);
-          WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"开始时间:%d\r\n",data.time_start);
+        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"开始时间:%d\r\n",data.time_start);
         p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_DRINK_START,data.time_start);
         if(data.drink_on==2)
         {
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"结束时间:%d\r\n",data.time_end);
+            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"结束时间:%d\r\n",data.time_end);
             p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_DRINK_END,data.time_end);
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"频率:%d\r\n",data.freq);
+            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"频率:%d\r\n",data.freq);
             p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_DRINK_FREQ,data.freq);
         }
     }
index e171180..919f8b7 100644 (file)
@@ -2495,16 +2495,11 @@ void SetDrinkSetParamCmd(uint16_t cmd, uint8_t *data, uint16_t len, uint8_t *tot
 
         // 【修复潜在问题】解析开始时间(原代码错误,改为HHMM格式:data[4]=小时,data[5]=分钟)
         // 原代码:drink_info.time_start = data[4]<<16|data[5]; (错误,8位左移16位丢失)
-        drink_info.time_start = (uint32_t)data[4] * 100 + data[5];  // 比如data[4]=8, data[5]=30 → 830(8点30分)
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"解析提醒开始时间time_start = %04d (HHMM格式)", drink_info.time_start);
-
+        drink_info.time_start = data[4]<<16|data[5]; //前16位为小时,后16位为分钟
         // 解析结束时间和频率(仅当data[1]非0时)
         if (data[1]) {
-            // 【修复潜在问题】解析结束时间(HHMM格式)
-            drink_info.time_end = (uint32_t)data[6] * 100 + data[7];
+            drink_info.time_end = data[6]<<16|data[7];  // 比如data[6]=12, data[7]=30 → 1230(12点30分)
             drink_info.freq = data[8];
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"解析提醒结束时间time_end = %04d (HHMM格式),提醒频率freq = %d 分钟/次", 
-                       drink_info.time_end, drink_info.freq);
         } else {
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"data[1]=0,不解析结束时间和频率");
         }