系统:增加心率,血氧,运动的功耗日志记录 1534/1
authorCaisking <3449750381@qq.com>
Thu, 19 Dec 2024 07:53:18 +0000 (15:53 +0800)
committerCaisking <3449750381@qq.com>
Thu, 19 Dec 2024 07:53:18 +0000 (15:53 +0800)
code/sdk/application/wearable/fd230app/nativeui/bloodoxygen/src/BloodOxygenModel.cpp
code/sdk/application/wearable/fd230app/nativeui/heartrate/src/HeartModel.cpp
code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp
code/sdk/application/wearable/service/msg_center/src/notify/message_notification.cpp
code/sdk/drivers/peripheral/utils/custom_save_runtime.h

index f8d5a61..1a46472 100644 (file)
@@ -17,6 +17,8 @@ extern "C" errcode_t uapi_get_timestamp_ms(uint32_t *tm);
 #include "heart_blood/BloodCardView.h"
 #include "MainViewSample.h"
 
+#include <custom_save_runtime.h>
+
 #define MAX_UNWARE_COUNT 10
 #define MAX_VALID_SPO2_COUNT 30
 #define MAX_DISVALID_SPO2_COUNT 100
@@ -66,6 +68,8 @@ namespace OHOS
             uint16_t md = PPG_SERVICE_CMD_TYPE_STOP_SPO2_TEST;
             send_ppg_cmd_msg(md);
             startspo2 = false;
+
+            uapi_save_runtime_log(RUNTIME_LOG_OXYGEN_MEASURE_END);
         }
         else if (state == BloodState::Start && startspo2 == false)
         {
@@ -80,6 +84,8 @@ namespace OHOS
             uint16_t md = PPG_SERVICE_CMD_TYPE_DO_SPO2_TEST;
             send_ppg_cmd_msg(md);
             startspo2 = true;
+
+            uapi_save_runtime_log(RUNTIME_LOG_OXYGEN_MEASURE);
         }
     }
 
index f26eba7..a41123c 100644 (file)
@@ -43,6 +43,8 @@
 \r
 #include "hx3695.h"\r
 \r
+#include <custom_save_runtime.h>\r
+\r
 #ifdef __cplusplus\r
 extern "C" {\r
 #endif\r
@@ -420,6 +422,14 @@ void HeartModel::Heart_Control(HeartState state, HeartCheck check) {
       sensorstate = false;\r
       uapi_dev_runtime_set_heartrate_detect_status(0);\r
     }\r
+\r
+    //记录日志\r
+    if (checkstate == HeartCheck::PASSIVITY) {\r
+      uapi_save_runtime_log(RUNTIME_LOG_OXYGEN_PASSIVE_MEASURE_END);\r
+    } else {\r
+      uapi_save_runtime_log(RUNTIME_LOG_HEART_MEASURE_END);\r
+    }\r
+\r
     // 复原检测状态\r
     checkstate = HeartCheck::RESTSTSTE;\r
   } else if (state == HeartState::Start && heartstate == false) {\r
@@ -434,6 +444,13 @@ void HeartModel::Heart_Control(HeartState state, HeartCheck check) {
     send_ppg_cmd_msg(md);\r
     heartstate = true;\r
     checkstate = check;\r
+\r
+    //记录日志\r
+    if (checkstate == HeartCheck::PASSIVITY) {\r
+      uapi_save_runtime_log(RUNTIME_LOG_HEART_PASSIVE_MEASURE);\r
+    } else {\r
+      uapi_save_runtime_log(RUNTIME_LOG_HEART_MEASURE);\r
+    }\r
   }\r
 }\r
 // 开始检测\r
@@ -503,7 +520,7 @@ void HeartModel::Heart_Save() {
   SetCheckTime(timestamp);\r
 \r
   HealthService::GetInstance()->send_heart_save();\r
-  \r
+\r
   // 更新最大和最小心率\r
   displayheart_max =\r
       (displayheart_max < currentheart ? currentheart : displayheart_max);\r
index f216def..22c0613 100644 (file)
@@ -50,6 +50,7 @@
 
 #include "bleService.h"
 #include "chip_system_time.h"
+#include <custom_save_runtime.h>
 
 extern "C" errcode_t uapi_get_timestampe_ms(uint32_t *tm);
 extern "C" errcode_t uapi_get_timestampe_ss(uint32_t *tm);
@@ -406,6 +407,15 @@ void TraingModel::SetSportState(ExerciseState state) {
     }
   }
   sportState_ = state;
+
+  // 记录运动状态
+  if (state == ExerciseState::End) {
+    uapi_save_runtime_log(RUNTIME_LOG_SPORT_END);
+  } else if (state == ExerciseState::Continue) {
+    uapi_save_runtime_log(RUNTIME_LOG_SPORT_RESUME);
+  } else if (state == ExerciseState::Pause) {
+    uapi_save_runtime_log(RUNTIME_LOG_SPORT_PAUSE);
+  }
 }
 /*获取运动状态*/
 ExerciseState TraingModel::GetSportState() { return sportState_; }
@@ -636,9 +646,6 @@ void TraingModel::SetTimestamp() {
                   "训练目标:类型: %d  值: %d 当前目标值:%d", sportTagType_,
                   sportTag_, current_goal);
 
-    (Openingway == true) ? (printf("app发起运动\n"))
-                         : (printf("手表发起运动\n"));
-
     // 设置起始日期和时间
     SetStartDateTime();
 
@@ -646,6 +653,19 @@ void TraingModel::SetTimestamp() {
     Endstate = false; // 确保"开始"和"结束"状态互斥
 
     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "开始运动");
+
+    //日志记录
+    if (Openingway) {
+      uapi_save_runtime_log(RUNTIME_LOG_APP_SPORT_LAUNCH); // app发起运动
+    } else {
+      uapi_save_runtime_log(RUNTIME_LOG_DIAL_SPORT_LAUNCH); //手表发起运动
+    }
+    if (isspecialsport_) {
+      uapi_save_runtime_log(RUNTIME_LOG_SPORT_SPECIAL_START); //特殊运动
+    } else {
+      uapi_save_runtime_log(RUNTIME_LOG_SPORT_NORMAL_START); //普通运动
+    }
+
   } else if (currentState == ExerciseState::End && !Endstate) {
     // 设置训练 runtime 为 0 训练结束
     uapi_dev_runtime_set_train_status(0);
index 2c48743..12a5b16 100644 (file)
@@ -62,7 +62,8 @@ bool MessageViewEventListener::OnRelease(UIView &view,
   if (strcmp(view.GetViewId(), DELETEBUTTON) == 0) {
     NotificationManager::GetInstance()->StopNotify();
     // 点击关闭之后通知list进行刷新
-    SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  // SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  MessageModel::GetInstance().UpdateMessageView();
   }
 
   return true;
@@ -72,7 +73,8 @@ bool MessageViewEventListener::OnDrag(UIView &view, const DragEvent &event) {
   UNUSED(view);
   NotificationManager::GetInstance()->StopNotify();
   // 点击关闭之后通知list进行刷新
-  SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  // SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  MessageModel::GetInstance().UpdateMessageView();
   return true;
 }
 
@@ -98,8 +100,10 @@ UIViewGroup *CreateMessageView(void) {
       return nullptr;
     }
     MessageGroupView->SetPosition(0, 0, 466, 466);
-    // MessageGroupView->SetStyle(STYLE_BACKGROUND_COLOR, Color::GetColorFromRGB(0x00, 165, 230).full);
-    // MessageGroupView->SetStyle(STYLE_BACKGROUND_OPA, 255); // 127 : background opacity
+    // MessageGroupView->SetStyle(STYLE_BACKGROUND_COLOR,
+    // Color::GetColorFromRGB(0x00, 165, 230).full);
+    // MessageGroupView->SetStyle(STYLE_BACKGROUND_OPA, 255); // 127 :
+    // background opacity
     MessageGroupView->SetViewId("messagenotify");
     MessageGroupView->SetTouchable(true);
     MessageGroupView->SetDraggable(true);
@@ -242,7 +246,8 @@ UIViewGroup *CreateMessageView(void) {
       .Message_StartTimer(); // 开启一个3s后弹窗自动销毁定时器
 
   WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Create MessageGroupView succeed!!");
-  NotificationManager::GetInstance()->RegisterNotifyCleanupFunction(FreeMessageView);
+  NotificationManager::GetInstance()->RegisterNotifyCleanupFunction(
+      FreeMessageView);
   return MessageGroupView;
 }
 /*释放消息弹窗视图*/
@@ -275,7 +280,7 @@ void FreeMessageView(void) {
                   MessageGroupView);
 
     RootView::GetInstance()->Remove(MessageGroupView);
-    
+
     delete MessageGroupView;
     MessageGroupView = nullptr;
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Free MessageView succeed!!");
@@ -294,7 +299,8 @@ static void Message_TimerCallbackProc(int data) {
   WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Message_TimerCallbackProc");
   NotificationManager::GetInstance()->StopNotify();
   // 点击关闭之后通知list进行刷新
-  SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  // SendMsgToUIService(UI_UPDATE_MESSAGE_DATA, 0, nullptr, 0);
+  MessageModel::GetInstance().UpdateMessageView();
 }
 
 /*
index 4e5464d..0325c79 100644 (file)
 /*
- * @Author: luozheng 1732036298@qq.com
- * @Date: 2024-12-18 10:27:52
- * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-12-18 16:53:11
- * @FilePath: /FD230/code/sdk/drivers/peripheral/utils/custom_save_runtime.h
+ *@Author:luozheng 1732036298@qq.com
+ *@Date:2024-12-18 10:27:52
+ *@LastEditors:luozheng 1732036298@qq.com
+ *@LastEditTime:2024-12-18 16:53:11
+ *@FilePath:/FD230/code/sdk/drivers/peripheral/utils/custom_save_runtime.h
  */
 /**
- * Copyright (c) @CompanyNameMagicTag 2022-2022. All rights reserved. \n
+ *Copyright(c) @CompanyNameMagicTag 2022-2022. All rights reserved. \n
  *
- * Description: Provides at cmd register func \n
- * Author: @CompanyNameTag \n
- * History: \n
- * 2022-07-20, Create file. \n
+ *Description:Provides at cmd register func \n
+ *Author:@CompanyNameTag \n
+ *History:\n
+ *2022-07-20, Create file. \n
  */
 #ifndef CUSTOM_RUNTIME_LOG_H
 #define CUSTOM_RUNTIME_LOG_H
 
+#include "errcode.h"
 #include <stdint.h>
 #include <stdio.h>
-#include "errcode.h"
 #ifdef __cplusplus
 #if __cplusplus
 extern "C" {
-#endif /* __cplusplus */
-#endif /* __cplusplus */
-
-
-typedef enum  {
-    //开机关机
-    RUNTIME_LOG_POWER_MIN =0x0000,
-    RUNTIME_LOG_POWER_ON,                                   //0x0001 开机
-    RUNTIME_LOG_POWER_OFF,                                  //0x0002 关机
-    RUNTIME_LOG_REBOOT,                                     //0x0003 重启
-    RUNTIME_LOG_OTA,                                        //0x0004 ota升级
-    RUNTIME_LOG_FACTORY_RESET,                              //0x0005 恢复出厂设置
-
-    //蓝牙
-    RUNTIME_LOG_BLE_MIN=0x0100,
-
-    RUNTIME_LOG_BLE_BROADCAST_ON,
-    RUNTIME_LOG_BLE_BROADCAST_OFF,
-    RUNTIME_LOG_BLE_CONNECT,
-    RUNTIME_LOG_BLE_DISCONNECT,
-    
-    RUNTIME_LOG_BLE_CONNECT_UPDATE_50,//连接参数更新 0x0105
-    RUNTIME_LOG_BLE_CONNECT_UPDATE_12,
-
-    RUNTIME_LOG_BLE_APP_CMD,//APP下发命令
-    RUNTIME_LOG_BLE_ALIPAY_CMD,
-    RUNTIME_LOG_BLE_WATCH_REPLY,//手表回复
-
-    RUNTIME_LOG_BLE_APP_SYN_END,//同步结束
-
-    RUNTIME_LOG_BR_CONNECT_HFP,
-    RUNTIME_LOG_BR_DISCONNECT_HFP,
-    RUNTIME_LOG_BR_CONNECT_A2DP,
-    RUNTIME_LOG_BR_DISCONNECT_A2DP,
-
-    RUNTIME_LOG_BR_CONNECT_A2DP_HEADSET,
-    RUNTIME_LOG_BR_DISCONNECT_A2DP_HEADSET,
-    //电话
-    RUNTIME_LOG_PHONE_MIN=0x0200,
-    RUNTIME_LOG_PHONE_HFP_ACTIVE,
-    RUNTIME_LOG_PHONE_HFP_HELD,
-    RUNTIME_LOG_PHONE_HFP_DIALING,
-    RUNTIME_LOG_PHONE_HFP_ALERTING,
-    RUNTIME_LOG_PHONE_HFP_INCOMING,
-    RUNTIME_LOG_PHONE_HFP_WAITING,
-    RUNTIME_LOG_PHONE_HFP_FINISHED,
-    RUNTIME_LOG_PHONE_HFP_TO_MOBILE_PHONE,
-        
-    RUNTIME_LOG_PHONE_CAT1_DIALING,
-    RUNTIME_LOG_PHONE_CAT1_INCOMING,
-    RUNTIME_LOG_PHONE_CAT1_WAITING,
-    RUNTIME_LOG_PHONE_CAT1_ACTIVE,
-    RUNTIME_LOG_PHONE_CAT1_FINISH,
-    RUNTIME_LOG_PHONE_CAT1_REJECT,
-
-    RUNTIME_LOG_PHONE_RESET, //状态复位
-
-    //cat1
-    RUNTIME_LOG_CAT1_MIN=0x0300,
-    //运动
-    RUNTIME_LOG_SPORT_MIN=0x0400,
-    //心率
-    RUNTIME_LOG_HEART_MIN=0x0500,
-    //佩戴
-    RUNTIME_LOG_WEAR_MIN=0x0600,
-    //血氧
-    RUNTIME_LOG_OXTGEN_MIN= 0x0700,
-    //LCD
-    RUNTIME_LOG_LCD_MIN=0x0800,
-    RUNTIME_LOG_LCD_ON,                                     //0x0801 屏幕亮
-    RUNTIME_LOG_LCD_OFF,                                    //0x0802 屏幕灭
-    //抬腕
-    RUNTIME_LOG_RAISE_MIN=0x0900,
-    //充电
-    RUNTIME_LOG_CHARGE_MIN=0x0A00,
-    RUNTIME_LOG_CHARGE_START,                               //0x0A01 充电开始
-    RUNTIME_LOG_CHARGE_STOP,                                //0x0A02 充电停止
-    //电池电量变化
-    RUNTIME_LOG_BATTERY_MIN=0x0B00,
-    //马达
-    RUNTIME_LOG_MOTOR_MIN=0x0C00,
-    RUNTIME_LOG_MOTOR_START,                                //0x0C01 马达开始转动
-    RUNTIME_LOG_MOTOR_STOP,                                 //0x0C02 马达停止转动
-    //表盘
-    RUNTIME_LOG_DIAL_MIN=0x0D00,
-    //音乐
-    RUNTIME_LOG_MUSIC_MIN=0x0E00,
-    RUNTIME_LOG_LOCAL_MUSIC_PLAY_START,                     //0x0E01 本地音乐开始播放
-    RUNTIME_LOG_LOCAL_MUSIC_PLAY_PAUSE,                     //0x0E02 本地音乐开始暂停
-    RUNTIME_LOG_LOCAL_MUSIC_PLAY_STOP,                      //0x0E03 本地音乐播放停止
-    //铃声
-    RUNTIME_LOG_RING_MIN=0x0F00,
-    RUNTIME_LOG_RING_PLAY_START_ALARM,                      //0x0F01 闹钟铃声开始播放
-    RUNTIME_LOG_RING_PLAY_STOP_ALARM,                       //0x0F02 闹钟铃声播放停止
-    RUNTIME_LOG_RING_PLAY_START_COUNTDOWN,                  //0x0F03 倒计时铃声开始播放
-    RUNTIME_LOG_RING_PLAY_STOP_COUNTDOWN,                   //0x0F04 倒计时铃声播放停止
-    RUNTIME_LOG_RING_PLAY_START_FINDWATCH,                  //0x0F05 查找手表铃声开始播放
-    RUNTIME_LOG_RING_PLAY_STOP_FINDWATCH,                   //0x0F06 查找手表铃声播放停止
-    //低功耗记录
-    RUNTIME_LOG_lOW_POWER_MIN=0x1000,
-    //录音
-    RUNTIME_LOG_RECORD_MIN=0x1100,
-    RUNTIME_LOG_RECORD_START,                               //0x1101 录音开始
-    RUNTIME_LOG_RECORD_STOP,                                //0x1102 录音停止
-    RUNTIME_LOG_RECORD_START_AI,                            //0x1103 AI录音开始
-    RUNTIME_LOG_RECORD_STOP_AI,                             //0x1104 AI录音停止
-
+#endif /*__cplusplus*/
+#endif /*__cplusplus*/
+
+typedef enum {
+  //开机关机
+  RUNTIME_LOG_POWER_MIN = 0x0000,
+  RUNTIME_LOG_POWER_ON,      // 0x0001 开机
+  RUNTIME_LOG_POWER_OFF,     // 0x0002 关机
+  RUNTIME_LOG_REBOOT,        // 0x0003 重启
+  RUNTIME_LOG_OTA,           // 0x0004 ota升级
+  RUNTIME_LOG_FACTORY_RESET, // 0x0005 恢复出厂设置
+
+  //蓝牙
+  RUNTIME_LOG_BLE_MIN = 0x0100,
+
+  RUNTIME_LOG_BLE_BROADCAST_ON,
+  RUNTIME_LOG_BLE_BROADCAST_OFF,
+  RUNTIME_LOG_BLE_CONNECT,
+  RUNTIME_LOG_BLE_DISCONNECT,
+
+  RUNTIME_LOG_BLE_CONNECT_UPDATE_50, //连接参数更新 0x0105
+  RUNTIME_LOG_BLE_CONNECT_UPDATE_12,
+
+  RUNTIME_LOG_BLE_APP_CMD, // APP下发命令
+  RUNTIME_LOG_BLE_ALIPAY_CMD,
+  RUNTIME_LOG_BLE_WATCH_REPLY, //手表回复
+
+  RUNTIME_LOG_BLE_APP_SYN_END, //同步结束
+
+  RUNTIME_LOG_BR_CONNECT_HFP,
+  RUNTIME_LOG_BR_DISCONNECT_HFP,
+  RUNTIME_LOG_BR_CONNECT_A2DP,
+  RUNTIME_LOG_BR_DISCONNECT_A2DP,
+
+  RUNTIME_LOG_BR_CONNECT_A2DP_HEADSET,
+  RUNTIME_LOG_BR_DISCONNECT_A2DP_HEADSET,
+  //电话
+  RUNTIME_LOG_PHONE_MIN = 0x0200,
+  RUNTIME_LOG_PHONE_HFP_ACTIVE,
+  RUNTIME_LOG_PHONE_HFP_HELD,
+  RUNTIME_LOG_PHONE_HFP_DIALING,
+  RUNTIME_LOG_PHONE_HFP_ALERTING,
+  RUNTIME_LOG_PHONE_HFP_INCOMING,
+  RUNTIME_LOG_PHONE_HFP_WAITING,
+  RUNTIME_LOG_PHONE_HFP_FINISHED,
+  RUNTIME_LOG_PHONE_HFP_TO_MOBILE_PHONE,
+
+  RUNTIME_LOG_PHONE_CAT1_DIALING,
+  RUNTIME_LOG_PHONE_CAT1_INCOMING,
+  RUNTIME_LOG_PHONE_CAT1_WAITING,
+  RUNTIME_LOG_PHONE_CAT1_ACTIVE,
+  RUNTIME_LOG_PHONE_CAT1_FINISH,
+  RUNTIME_LOG_PHONE_CAT1_REJECT,
+
+  RUNTIME_LOG_PHONE_RESET, //状态复位
+
+  // cat1
+  RUNTIME_LOG_CAT1_MIN = 0x0300,
+
+  /*运动*/
+  RUNTIME_LOG_SPORT_MIN = 0x0400,
+  //手表发起运动
+  RUNTIME_LOG_DIAL_SPORT_LAUNCH,
+  // App发起运动
+  RUNTIME_LOG_APP_SPORT_LAUNCH,
+  //开始特殊运动(跑步,走路,跑步机,漫步机)
+  RUNTIME_LOG_SPORT_SPECIAL_START,
+  //开始普通运动
+  RUNTIME_LOG_SPORT_NORMAL_START,
+  //暂停运动
+  RUNTIME_LOG_SPORT_PAUSE,
+  //恢复运动
+  RUNTIME_LOG_SPORT_RESUME,
+  //结束运动
+  RUNTIME_LOG_SPORT_END,
+  /*******************************/
+
+  /*******************************/
+  //心率
+  RUNTIME_LOG_HEART_MIN = 0x0500,
+  //主动测量心率
+  RUNTIME_LOG_HEART_MEASURE,
+  //测量心率结束
+  RUNTIME_LOG_HEART_MEASURE_END,
+  //被动测量心率
+  RUNTIME_LOG_HEART_PASSIVE_MEASURE,
+  //被动测量心率结束
+  RUNTIME_LOG_OXYGEN_PASSIVE_MEASURE_END,
+  /*******************************/
+
+  //佩戴
+  RUNTIME_LOG_WEAR_MIN = 0x0600,
+
+  /*******************************/
+  //血氧
+  RUNTIME_LOG_OXYGEN_MIN = 0x0700,
+  //主动测量血氧
+  RUNTIME_LOG_OXYGEN_MEASURE,
+  //测量血氧结束
+  RUNTIME_LOG_OXYGEN_MEASURE_END,
+  /*******************************/
+
+  // LCD
+  RUNTIME_LOG_LCD_MIN = 0x0800,
+  RUNTIME_LOG_LCD_ON,  // 0x0801 屏幕亮
+  RUNTIME_LOG_LCD_OFF, // 0x0802 屏幕灭
+  //抬腕
+  RUNTIME_LOG_RAISE_MIN = 0x0900,
+
+  //充电
+  RUNTIME_LOG_CHARGE_MIN = 0x0A00,
+  RUNTIME_LOG_CHARGE_START, // 0x0A01 充电开始
+  RUNTIME_LOG_CHARGE_STOP,  // 0x0A02 充电停止
+
+  //电池电量变化
+  RUNTIME_LOG_BATTERY_MIN = 0x0B00,
+
+  //马达
+  RUNTIME_LOG_MOTOR_MIN = 0x0C00,
+  RUNTIME_LOG_MOTOR_START, // 0x0C01 马达开始转动
+  RUNTIME_LOG_MOTOR_STOP,  // 0x0C02 马达停止转动
+
+  /*******************************/
+  //表盘
+  RUNTIME_LOG_DIAL_MIN = 0x0D00,
+  //表盘切换视频表盘(后续增加该类型,目前不好判断)
+  RUNTIME_LOG_DIAL_VIDEO_START,
+  //表盘切换指针表盘
+  RUNTIME_LOG_DIAL_POINTER_START,
+  //表盘切换序列帧表盘
+  RUNTIME_LOG_DIAL_SEQUENCE_START,
+  //表盘切换数码表盘
+  RUNTIME_LOG_DIAL_DIGITAL_START,
+  /*******************************/
+
+  //音乐
+  RUNTIME_LOG_MUSIC_MIN = 0x0E00,
+  RUNTIME_LOG_LOCAL_MUSIC_PLAY_START, // 0x0E01 本地音乐开始播放
+  RUNTIME_LOG_LOCAL_MUSIC_PLAY_PAUSE, // 0x0E02 本地音乐开始暂停
+  RUNTIME_LOG_LOCAL_MUSIC_PLAY_STOP,  // 0x0E03 本地音乐播放停止
+
+  //铃声
+  RUNTIME_LOG_RING_MIN = 0x0F00,
+  RUNTIME_LOG_RING_PLAY_START_ALARM,     // 0x0F01 闹钟铃声开始播放
+  RUNTIME_LOG_RING_PLAY_STOP_ALARM,      // 0x0F02 闹钟铃声播放停止
+  RUNTIME_LOG_RING_PLAY_START_COUNTDOWN, // 0x0F03 倒计时铃声开始播放
+  RUNTIME_LOG_RING_PLAY_STOP_COUNTDOWN,  // 0x0F04 倒计时铃声播放停止
+  RUNTIME_LOG_RING_PLAY_START_FINDWATCH, // 0x0F05 查找手表铃声开始播放
+  RUNTIME_LOG_RING_PLAY_STOP_FINDWATCH, // 0x0F06 查找手表铃声播放停止
+
+  //低功耗记录
+  RUNTIME_LOG_lOW_POWER_MIN = 0x1000,
+
+  //录音
+  RUNTIME_LOG_RECORD_MIN = 0x1100,
+  RUNTIME_LOG_RECORD_START,    // 0x1101 录音开始
+  RUNTIME_LOG_RECORD_STOP,     // 0x1102 录音停止
+  RUNTIME_LOG_RECORD_START_AI, // 0x1103 AI录音开始
+  RUNTIME_LOG_RECORD_STOP_AI,  // 0x1104 AI录音停止
 
 } runtime_log_cmd_Id;
 
-
-
-
 errcode_t uapi_save_runtime_log(uint16_t cmd);
 
 errcode_t uapi_runtime_log_service_init(void);
@@ -142,7 +191,7 @@ errcode_t uapi_runtime_log_service_init(void);
 #ifdef __cplusplus
 #if __cplusplus
 }
-#endif /* __cplusplus */
-#endif /* __cplusplus */
+#endif /*__cplusplus*/
+#endif /*__cplusplus*/
 
 #endif