移除睡眠监测触发睡眠模式;配置睡眠模式config value & runtime value 801/1 801/head
authorcheng <chengyf@zhihuishixun.com>
Tue, 27 Aug 2024 07:50:01 +0000 (15:50 +0800)
committercheng <chengyf@zhihuishixun.com>
Tue, 27 Aug 2024 07:50:01 +0000 (15:50 +0800)
code/sdk/application/wearable/fd230app/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp
code/sdk/application/wearable/fd230app/nativeui/sleep/include/SleepModel.h
code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepModel.cpp
code/sdk/drivers/peripheral/config/include/ConfigModel.h
code/sdk/drivers/peripheral/config/include/ConfigModelC.h
code/sdk/drivers/peripheral/config/src/ConfigModel.cpp
code/sdk/drivers/peripheral/utils/custom_runtime.c
code/sdk/drivers/peripheral/utils/custom_runtime.h

index 9fd0b3f..f1c8935 100644 (file)
@@ -325,16 +325,6 @@ extern "C"
             std::bind(AlarmTimerEventPublish, TOPIC_EVENT_ON_TIME, unuse));\r
     }\r
 \r
-    static void _ExitSleepModeAction(void)\r
-    {\r
-        OHOS::SleepModel::GetInstance().ExitSleepModeAction();\r
-    }\r
-\r
-    static void _EnterSleepModeAction(void)\r
-    {\r
-        OHOS::SleepModel::GetInstance().EnterSleepModeAction();\r
-    }\r
-\r
     void AlarmScan(void *arg)\r
     {\r
         struct tm curTime;\r
@@ -416,8 +406,6 @@ extern "C"
                     OHOS::SleepModel::GetInstance().ReInitData(); // 更新睡眠数据\r
                     SendMsgToUIService(UI_UPDATE_SLEEP_DATA, 0, nullptr, 0);\r
                     do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NAP_SEDENTARY_MODE, NULL);//算法底层切换小睡监测模式\r
-\r
-                    GraphicService::GetInstance()->PostGraphicEvent(_ExitSleepModeAction);\r
                 }\r
             }\r
             // 进入睡眠检测模式并退出小睡检测模式\r
@@ -440,8 +428,6 @@ extern "C"
 \r
                 //LOS_Msleep(1000);\r
                 do_cywee_service_check_msg(CYWEE_SERVICE_CMD_SLEEPING_MODE, NULL);//算法底层切换睡眠监测模式\r
-\r
-                GraphicService::GetInstance()->PostGraphicEvent(_EnterSleepModeAction);\r
             }\r
         }\r
         // 久坐提醒\r
index 44554c4..88c848f 100644 (file)
@@ -119,10 +119,6 @@ namespace OHOS
         void Sleep_StartTimer(uint32_t interval);
         void Sleep_StopTimer(void);
 
-        //
-        void EnterSleepModeAction(void);
-        void ExitSleepModeAction(void);
-
     private:
         SleepModel();
         SleepModel(const SleepModel &);
index c8d9912..b86e0e8 100644 (file)
@@ -749,42 +749,4 @@ namespace OHOS
         }
     }
     /* -------------------------------------------------------------------------- */
-    void SleepModel::EnterSleepModeAction(void)
-    {
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:EnterSleepModeAction]", __LINE__);
-
-        // update donotdisturb
-        SendMsgToUIService(UI_UPDATE_DNOTDISTURB_MODE, 0, nullptr, 0);
-
-        /*更新主界面配置*/
-        MainModel::GetInstance().setDialState(DialState::SLEEP, true);
-
-        // disable flip wrist
-        uapi_take_to_wake(0);
-
-        // turn down brightness
-        const power_display_svr_api_t *display_api = power_display_svr_get_api();
-        display_api->set_brightness(51);
-    }
-
-    void SleepModel::ExitSleepModeAction(void)
-    {
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:ExitSleepModeAction", __LINE__);
-
-        // update donotdisturb
-        SendMsgToUIService(UI_UPDATE_DNOTDISTURB_MODE, 0, nullptr, 0);
-
-        /*更新主界面配置*/
-        MainModel::GetInstance().setDialState(DialState::SLEEP, false);
-
-        // enable flip wrist
-        if(true == mmi_flip_wrist_switch_get())
-        {
-            uapi_take_to_wake(1);
-        }
-
-        // reset brightness
-        const power_display_svr_api_t *display_api = power_display_svr_get_api();
-        display_api->set_brightness(OHOS::ConfigModel::GetInstance()->GetBrightness());
-    }
 }
\ No newline at end of file
index 2527a92..b27ad32 100644 (file)
@@ -104,6 +104,7 @@ namespace OHOS
             CONFIGMODEL_ITEM_SLEEP_BEDTIME,//就寝时间
             CONFIGMODEL_ITEM_SLEEP_GET_UP,//起床时间
             CONFIGMODEL_ITEM_SLEEP_REMIND,//提前20分钟提醒开关
+            CONFIGMODEL_ITEM_SLEEP_MODE_SWITCH, // sleep mode
             //久坐提醒相关
             CONFIGMODEL_ITEM_SEDENTARY_SWITCH,//久坐提醒开关
             CONFIGMODEL_ITEM_SEDENTARY_INTERVAL,//久坐提醒时间间隔(单位小时)
@@ -358,6 +359,7 @@ namespace OHOS
             {ConfigDataType::DATATYPE_INT,     "sleep_bedtime",            "1310720" }, //CONFIGMODEL_ITEM_SLEEP_BEDTIME,就寝时间 1310720 : 20 << 16 ,前16位为小时,后16位为分钟
             {ConfigDataType::DATATYPE_INT,     "sleep_getup",              "589824" }, // CONFIGMODEL_ITEM_SLEEP_GET_UP,起床时间,589824 : 9 << 16 ,前16位为小时,后16位为分钟
             {ConfigDataType::DATATYPE_INT,     "sleep_remide",             "0" }, // CONFIGMODEL_ITEM_SLEEP_REMIND,//提前20分钟提醒开关
+            {ConfigDataType::DATATYPE_INT,     "sleep_mode",             "0" }, // CONFIGMODEL_ITEM_SLEEP_MODE_SWITCH, // sleep mode
             {ConfigDataType::DATATYPE_INT,    "sedentary_switch",         "0"       }, // CONFIGMODEL_ITEM_SEDENTARY_SWITCH,//久坐提醒开关
             {ConfigDataType::DATATYPE_INT,     "sedentary_interval",       "1"           }, // CONFIGMODEL_ITEM_SEDENTARY_INTERVAL,//久坐提醒时间间隔
             {ConfigDataType::DATATYPE_INT,     "sedentary_remindertime",     "0"           }, // CONFIGMODEL_ITEM_SEDENTARY_REMINDERTIME,//久坐提醒时间段 前16位是开始时间 前8 为小时 后8为分钟  后16位为结束时间规则同前  例: 1600 0B00 11点开始到 22点结束
index b0b9623..2a0a6dd 100644 (file)
@@ -106,6 +106,10 @@ int get_config_heart_from_config_model(void);
 //设置睡眠频率
 void set_config_heart(int heartRateDetectionFreq);
 
+// sleep mode switch
+void mmi_sleep_mode_switch_read(void);
+void mmi_sleep_mode_switch_write(void);
+
 // for c file
 bool mmi_flip_wrist_switch_get(void);
 
index 16de7a0..f66f121 100644 (file)
@@ -1530,6 +1530,20 @@ bool get_motion_recognition_from_config_model(void)
     return flag;
 }
 
+// sleep mode switch get
+void mmi_sleep_mode_switch_read(void)
+{
+    uint8_t flag = (OHOS::ConfigModel::GetInstance()->get_configData_int(OHOS::ConfigModel::CONFIGMODEL_ITEM_SLEEP_MODE_SWITCH));
+    uapi_sleep_mode_flag_set(flag);
+}
+
+// sleep mode switch set
+void mmi_sleep_mode_switch_write(void)
+{
+    uint8_t flag = uapi_sleep_mode_flag_get();
+    OHOS::ConfigModel::GetInstance()->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_SLEEP_MODE_SWITCH, flag);
+}
+
 // get flip wrist switch for c file
 bool mmi_flip_wrist_switch_get(void)
 {
index 5d05fd1..c93c616 100644 (file)
@@ -79,6 +79,7 @@ typedef struct
     uint8_t saveele_status;//省电模式状态
     uint8_t lock_status;//密码锁状态
     uint8_t motion_recognition_status;//运动识别开关状态
+    uint8_t sleep_mode_flag; // sleep mode flag
 } runtime_status_t;
 
 
@@ -379,4 +380,15 @@ void uapi_dev_runtime_set_motion_recognition_status(uint8_t status)
 uint8_t uapi_dev_runtime_get_motion_recognition_status(void)
 {
     return g_runtime.motion_recognition_status;
+}
+
+// sleep mode flag
+void uapi_sleep_mode_flag_set(uint8_t flag)
+{
+    g_runtime.sleep_mode_flag = flag;
+}
+
+uint8_t uapi_sleep_mode_flag_get(void)
+{
+    return g_runtime.sleep_mode_flag;
 }
\ No newline at end of file
index 38ed978..f36c539 100644 (file)
@@ -184,6 +184,9 @@ void uapi_dev_runtime_set_ancs_clientid(uint16_t clientid);
 uint16_t uapi_dev_runtime_get_ancs_clientid(void);
 
 
+// sleep mode flag
+void uapi_sleep_mode_flag_set(uint8_t flag);
+uint8_t uapi_sleep_mode_flag_get(void);
 
 #ifdef __cplusplus
 #if __cplusplus