namespace OHOS
{
static HealthService *g_pHealthService = nullptr;
- static constexpr const char *HEALTH_JSON_PATH_HEART = "/user/userdata/health/heart";
+ static constexpr const char *HEALTH_JSON_PATH_HEART = "/user/userdata/health/heart/";
- static constexpr const char *HEALTH_JSON_PATH_OXYGEN = "/user/userdata/health/oxygen";
+ static constexpr const char *HEALTH_JSON_PATH_OXYGEN = "/user/userdata/health/oxygen/";
std::string GetCurrentDate()
{
return std::string(date);
}
//static char *JSON_F_buf=NULL;
- const char *GET_HEALTH_JSON_PATH_C_STR()
+ const char *GET_HEALTH_JSON_PATH_C_STR_HEART()
{
return HEALTH_JSON_PATH_HEART;
}
+ const char *GET_HEALTH_JSON_PATH_C_STR_OXYGEN()
+ {
+ return HEALTH_JSON_PATH_OXYGEN;
+ }
+
cJSON *heart_root = NULL;
cJSON *oxygen_root = NULL;
HealthService::HealthService()
#define HEART_MAX_POINTS 360
namespace OHOS
{
- const char * GET_HEALTH_JSON_PATH_C_STR();
+ const char * GET_HEALTH_JSON_PATH_C_STR_HEART();
+ const char * GET_HEALTH_JSON_PATH_C_STR_OXYGEN();
typedef enum {
HEALTH_TYPE_HEART,
char day[20];
strftime(day, sizeof(day), "%Y%m%d", ltm);
char buf[PATH_MAX_LEN]={0};
- sprintf_s(buf,PATH_MAX_LEN-1,"%s%s.json",OHOS::GET_HEALTH_JSON_PATH_C_STR(),day);
+ sprintf_s(buf,PATH_MAX_LEN-1,"%s%s.json",OHOS::GET_HEALTH_JSON_PATH_C_STR_HEART(),day);
if(JSON_F_buf != NULL)
{
free(JSON_F_buf);
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s",JSON_F_buf);
#endif
return JSON_F_buf;
+}
+
+const char *get_health_OXYGEN_data_path(void)
+{
+ #ifdef FD230
+ time_t now = time(0);
+ tm *ltm = localtime(&now);
+ char day[20];
+ strftime(day, sizeof(day), "%Y%m%d", ltm);
+ char buf[PATH_MAX_LEN]={0};
+ sprintf_s(buf,PATH_MAX_LEN-1,"%s%s.json",OHOS::GET_HEALTH_JSON_PATH_C_STR_OXYGEN(),day);
+ if(JSON_F_buf != NULL)
+ {
+ free(JSON_F_buf);
+ JSON_F_buf=NULL;
+
+ }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "!!!!!!!!!!!%x strlen(buf):%d",JSON_F_buf,strlen(buf));
+ uint8_t len = PATH_MAX_LEN+1;
+ JSON_F_buf=(char *)malloc(len);
+ memset(JSON_F_buf,0,len);
+ if(JSON_F_buf != NULL)//
+ {
+ strcpy(JSON_F_buf,buf);
+ }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%s",JSON_F_buf);
+ #endif
+ return JSON_F_buf;
}
void set_weather_now_data(int humidity, char* windScale, char* textNight,int uvIndex,int temp,int iconNight)
char *addressbook(void);
void addressbookToRead(char*);
void addressbookTowrite(void);
+
const char *get_health_data_path(void);
+const char *get_health_OXYGEN_data_path(void);
+
void add_addressbookToRead(char *data);
void set_user_data(msg_user_info_t *data);
dataBit = 1;//心率数据字节1个字节 uint8_t\r
break;\r
case 0x41://同步血氧历史数据\r
- path=NULL;\r
+ path=get_health_OXYGEN_data_path();\r
dataBit = 1;//血氧数据字节1个字节 uint8_t\r
break;\r
- case 0x43: //同步步数历史数据\r
- path=NULL;\r
- dataBit = 4;//心率数据字节4个字节 uint32_t\r
- break;\r
case 0x44://同步燃脂时间数据\r
path=NULL;\r
break;\r
- case 0x45://同步站立历史数据\r
- path=NULL;\r
- break;\r
case 0x46://同步卡路里历史数据\r
path=NULL; \r
break;\r
case 0x47://同步距离历史数据\r
path=NULL; \r
break;\r
- case 0x49://同步基础训练历史数据\r
- path=NULL; \r
- break;\r
case 0x4b://睡眠历史数据\r
path=NULL;\r
break;\r
{\r
cJSON * heart_data_item=cJSON_GetArrayItem(heart_data_list,i);\r
uint32 timestamp=cJSON_GetObjectItem(heart_data_item,"timestamp")->valueint;\r
- uint32_t value=cJSON_GetObjectItem(heart_data_item,"heart_value")->valueint;\r
+ uint32_t value=cJSON_GetObjectItem(heart_data_item,"value")->valueint;\r
// value =450;\r
printf("value :%d\r\n",value);\r
printf("timestamp :%d\r\n",timestamp);\r
printf("同步血氧数据\r\n");\r
EACH_DATA_LEN = SPO2_DATA_LEN;\r
num=(ble_nus_max_data_len-18)/EACH_DATA_LEN;\r
- Read_JSON_file_buf_send_bin_Data(num,0x41,"heart_data_list");\r
+ Read_JSON_file_buf_send_bin_Data(num,0x41,"spo2_data_list");\r
break;\r
case 0x43: //同步步数历史数据\r
\r