return;
}
+uint8_t * ble_get_sos_all_data_malloc_(uint32_t *len)
+{
+ uint8_t count= OHOS ::get_sos_number_count();
+ if(count==0)
+ return NULL;
+
+ uint8_t *data=(uint8_t *)malloc(1+count*(sizeof(OHOS::sos_number_t)+3));
+ if(data==NULL)
+ {
+ return NULL;
+ }
+ data[0]=count;
+ uint32_t offset=1;
+
+ for(int i=0;i<count;i++)
+ {
+ char name[NAME_LEN]={0};
+ uint8_t sex= OHOS::get_sos_name_and_sex(i,name);
+ char number[NUMBER_LEN]={0};
+ memcpy_s((void *)number,NUMBER_LEN,(void *)OHOS::get_sos_number(i),NUMBER_LEN);
+ data[offset]=sex;
+ offset++;
+ data[offset]=osal_strlen(name);
+ offset++;
+ memcpy_s((void *)&data[offset],NAME_LEN,name,osal_strlen(name));
+ offset+=osal_strlen(name);
+
+ data[offset]=osal_strlen(number);
+ offset++;
+ memcpy_s((void *)&data[offset],NUMBER_LEN,number,osal_strlen(number));
+ offset+=osal_strlen(number);
+
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"sex:%d,name:%d,%s,number:%d,%s\r\n",sex,osal_strlen(name),name,osal_strlen(number),number);
+ }
+ *len=offset;
+
+ return data;
+}
+
+//sos
+void ble_sos_number_clean_(void)
+{
+ OHOS::sos_number_clean();
+}
+
+bool ble_add_sos_number_(uint8_t sex,char *name,char *number)
+{
+ return OHOS::add_sos_number(sex,name,number);
+}
+
+
+
+void ble_sos_data_save_(void)
+{
+ OHOS::SOS_number_save();
+}
+
+void ble_SOS_data_init_(void)
+{
+ OHOS::SOS_number_init();
+}
extern bleInstruct_t_ bleInstruct_t;
bleInstruct_t .addressbookToRead=addressbookToRead_;
bleInstruct_t .addressbookTowrite=addressbookTowrite_;
+
+ bleInstruct_t .ble_get_sos_all_data_malloc_cb= ble_get_sos_all_data_malloc_;
+
+ bleInstruct_t.ble_sos_number_clean_cb= ble_sos_number_clean_;
+
+ bleInstruct_t .ble_add_sos_number_cb=ble_add_sos_number_;
+
+ bleInstruct_t.ble_sos_data_save_cb=ble_sos_data_save_;
+ bleInstruct_t.ble_SOS_data_init_cb=ble_SOS_data_init_;
+
}
#endif
return;
}
+uint8_t * ble_get_sos_all_data_malloc_(uint32_t *len)
+{
+ uint8_t count= OHOS ::get_sos_number_count();
+ if(count==0)
+ return NULL;
+
+ uint8_t *data=(uint8_t *)malloc(1+count*(sizeof(OHOS::sos_number_t)+3));
+ if(data==NULL)
+ {
+ return NULL;
+ }
+ data[0]=count;
+ uint32_t offset=1;
+
+ for(int i=0;i<count;i++)
+ {
+ char name[NAME_LEN]={0};
+ uint8_t sex= OHOS::get_sos_name_and_sex(i,name);
+ char number[NUMBER_LEN]={0};
+ memcpy_s((void *)number,NUMBER_LEN,(void *)OHOS::get_sos_number(i),NUMBER_LEN);
+ data[offset]=sex;
+ offset++;
+ data[offset]=osal_strlen(name);
+ offset++;
+ memcpy_s((void *)&data[offset],NAME_LEN,name,osal_strlen(name));
+ offset+=osal_strlen(name);
+
+ data[offset]=osal_strlen(number);
+ offset++;
+ memcpy_s((void *)&data[offset],NUMBER_LEN,number,osal_strlen(number));
+ offset+=osal_strlen(number);
+
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"sex:%d,name:%d,%s,number:%d,%s\r\n",sex,osal_strlen(name),name,osal_strlen(number),number);
+ }
+ *len=offset;
+
+ return data;
+}
+
+//sos
+void ble_sos_number_clean_(void)
+{
+ OHOS::sos_number_clean();
+}
+
+bool ble_add_sos_number_(uint8_t sex,char *name,char *number)
+{
+ return OHOS::add_sos_number(sex,name,number);
+}
+
+
+
+void ble_sos_data_save_(void)
+{
+ OHOS::SOS_number_save();
+}
+
+void ble_SOS_data_init_(void)
+{
+ OHOS::SOS_number_init();
+}
extern bleInstruct_t_ bleInstruct_t;
bleInstruct_t .addressbookToRead=addressbookToRead_;
bleInstruct_t .addressbookTowrite=addressbookTowrite_;
+
+ bleInstruct_t .ble_get_sos_all_data_malloc_cb= ble_get_sos_all_data_malloc_;
+
+ bleInstruct_t.ble_sos_number_clean_cb= ble_sos_number_clean_;
+
+ bleInstruct_t .ble_add_sos_number_cb=ble_add_sos_number_;
+
+ bleInstruct_t.ble_sos_data_save_cb=ble_sos_data_save_;
+ bleInstruct_t.ble_SOS_data_init_cb=ble_SOS_data_init_;
+
}
#endif
return;
}
+uint8_t * ble_get_sos_all_data_malloc_(uint32_t *len)
+{
+ uint8_t count= OHOS ::get_sos_number_count();
+ if(count==0)
+ return NULL;
+
+ uint8_t *data=(uint8_t *)malloc(1+count*(sizeof(OHOS::sos_number_t)+3));
+ if(data==NULL)
+ {
+ return NULL;
+ }
+ data[0]=count;
+ uint32_t offset=1;
+
+ for(int i=0;i<count;i++)
+ {
+ char name[NAME_LEN]={0};
+ uint8_t sex= OHOS::get_sos_name_and_sex(i,name);
+ char number[NUMBER_LEN]={0};
+ memcpy_s((void *)number,NUMBER_LEN,(void *)OHOS::get_sos_number(i),NUMBER_LEN);
+ data[offset]=sex;
+ offset++;
+ data[offset]=osal_strlen(name);
+ offset++;
+ memcpy_s((void *)&data[offset],NAME_LEN,name,osal_strlen(name));
+ offset+=osal_strlen(name);
+
+ data[offset]=osal_strlen(number);
+ offset++;
+ memcpy_s((void *)&data[offset],NUMBER_LEN,number,osal_strlen(number));
+ offset+=osal_strlen(number);
+
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"sex:%d,name:%d,%s,number:%d,%s\r\n",sex,osal_strlen(name),name,osal_strlen(number),number);
+ }
+ *len=offset;
+
+ return data;
+}
+
+//sos
+void ble_sos_number_clean_(void)
+{
+ OHOS::sos_number_clean();
+}
+
+bool ble_add_sos_number_(uint8_t sex,char *name,char *number)
+{
+ return OHOS::add_sos_number(sex,name,number);
+}
+
+
+
+void ble_sos_data_save_(void)
+{
+ OHOS::SOS_number_save();
+}
+
+void ble_SOS_data_init_(void)
+{
+ OHOS::SOS_number_init();
+}
extern bleInstruct_t_ bleInstruct_t;
bleInstruct_t .addressbookToRead=addressbookToRead_;
bleInstruct_t .addressbookTowrite=addressbookTowrite_;
+
+ bleInstruct_t .ble_get_sos_all_data_malloc_cb= ble_get_sos_all_data_malloc_;
+
+ bleInstruct_t.ble_sos_number_clean_cb= ble_sos_number_clean_;
+
+ bleInstruct_t .ble_add_sos_number_cb=ble_add_sos_number_;
+
+ bleInstruct_t.ble_sos_data_save_cb=ble_sos_data_save_;
+ bleInstruct_t.ble_SOS_data_init_cb=ble_SOS_data_init_;
+
}
#endif
SAFE_CALL(bleInstruct_t.ble_SOS_data_init_cb);
}
-void ota_updata_init(void)
-{
- SAFE_CALL(bleInstruct_t.ota_updata_init_cb);
-}
-
uint8_t * ble_get_sos_all_data_malloc(uint32_t *len)
{
char* ble_get_ai_audio_path_str(void)
{
- return SAFE_CALL_PTR(bleInstruct_t.ble_get_ai_audio_path_str);
+ // return SAFE_CALL_PTR(bleInstruct_t.ble_get_ai_audio_path_str);
+ return NULL;
}
void ble_set_pair(uint8_t falg)
SAFE_CALL(bleInstruct_t.set_br_pair, data);
}
-bool get_lcd_state(void)
-{
- return SAFE_CALL_BOOL(bleInstruct_t.get_lcd_state);
-}
-
-uint8_t ble_get_heart_data()
-{
- return SAFE_CALL_PTR_NO_ARGS(bleInstruct_t.ble_get_heart_data);
-}
-
-uint8_t ble_get_oxygen_data()
-{
- return SAFE_CALL_PTR_NO_ARGS(bleInstruct_t.ble_get_oxygen_data);
-}
-
-
-cJSON* ble_get_recs_data()
-{
- return SAFE_CALL_PTR(bleInstruct_t.ble_get_recs_data);
-}
//通过时间戳获取训练数据
cJSON* ble_get_Trainingdata_by_timetamp(uint32_t timetamp)
{
- return SAFE_CALL_PTR(bleInstruct_t.ble_get_Trainingdata_by_timetamp, timetamp);
+ return SAFE_CALL_PTR(bleInstruct_t.ble_get_Trainingdata_by_timetamp, timetamp);
}
bool delete_MP3_file_By_ID(uint16_t id)
}
-
-
-uint8_t ble_AT_add_nap_data(uint16_t time)
-{
- return SAFE_CALL_PTR(bleInstruct_t.ble_AT_add_nap_data, time);
-}
-
uint8_t ble_get_sleep_data(uint32_t file_size,uint8_t day_,uint8_t *data)
{
return SAFE_CALL_PTR(bleInstruct_t.ble_get_sleep_data, file_size, day_, data);
return SAFE_CALL_PTR_NO_ARGS(bleInstruct_t.ble_get_password);
}
-// void set_sedent_param(msg_sedent_set_param_info_t * data)
-// {
-// return bleInstruct_t .set_sedent_param(data);
-// }
+void set_sedent_param(msg_sedent_set_param_info_t * data)
+{
+ SAFE_CALL(bleInstruct_t.set_sedent_param,data);
+}
void get_sedent_param( msg_sedent_set_param_info_t * data)
// SendMsgToUIService(UI_UPDATE_WEATHER_DATA,0,nullptr,0);
}
-void ble_add_message_index(uint32_t old_index)
-{
- SAFE_CALL(bleInstruct_t.ble_add_message_index, old_index);
-}
void SendDtfmStrNumberToCat1(char ch) // ble发送单个字符到CAT1 DTMF功能
{
void set_br_pair(uint8_t data);
-bool get_lcd_state(void);
//////////////////////////////////////////////////////////////////////////
bool Ble_Set_ScheduleInfo(uint8_t id,uint32_t timetamp_begin,uint32_t timetamp_end,char *title,char *data,bool is_end);
bool ble_bin_install(const char * data);
typedef struct bleInstruct
{
- uint16_t (*get_str_nodisplay_number_cb)(char *str, uint32_t max_len);
int (*read_gps_data_cb)(char *path ,uint8_t *out_buf);
uint8_t (*get_dial_num_cb)(void);
void (*ble_sos_data_save_cb)(void);
void (*ble_SOS_data_init_cb)(void);
- void (*ota_updata_init_cb)(void);
+ // void (*ota_updata_init_cb)(void);
uint8_t * (*ble_get_sos_all_data_malloc_cb)(uint32_t *len);
void (*ble_sos_number_clean_cb)(void);
bool (*ble_add_sos_number_cb)(uint8_t sex,char *name,char *number);
-
- void (*ble_Alipayunbind_cb)(void);
-
void (*get_music_path_cb)(char *buf,uint8_t max_len);
bool (*is_first_pair_cb)(void);
bool (*Ble_Set_ScheduleInfo_cb)(uint8_t id,uint32_t timetamp_begin,uint32_t timetamp_end,char *title,char *data,bool is_end);
void (*ble_set_ai_Question_str)(char *buf);
void (*ble_set_ai_Answer_str)(char *buf,uint8_t type);
- char* (*ble_get_ai_audio_path_str)(void);
+ // char* (*ble_get_ai_audio_path_str)(void);
void (*ble_set_pair)(uint8_t falg);
void (*set_br_pair)(uint8_t data);
- bool (*get_lcd_state)(void);
-
- uint8_t (*ble_get_heart_data)(void);
- uint8_t (*ble_get_oxygen_data)(void);
-
-
- cJSON* (*ble_get_recs_data)(void);
-
cJSON* (*ble_get_Trainingdata_by_timetamp)(uint32_t timetamp);
bool (*delete_MP3_file_By_ID)(uint16_t id);
char * (*dir_to_json_buf_malloc)(uint8_t type);
- uint8_t (*ble_AT_add_nap_data)(uint16_t time);
-
uint8_t (*ble_get_sleep_data)(uint32_t file_size,uint8_t day_,uint8_t *data);
bool (*dial_file_save)(void );
// void (*install_Register_dial_)( char * name,uint16_t id);
void (*install_Register_dial)( char * name,uint16_t id);
-
- void (*delete_before_file)(uint8_t type);
-
- char * (*ble_sywee_history)(uint8_t day,uint16_t *len ,uint8_t type);
-
void (*ble_set_sleep_remind)(msg_get_sleep_param_info_t data);
void (*ble_get_sleep_remind)(msg_get_sleep_param_info_t *data);
char * (*struct_to_json_buf_malloc)(uint8_t day);
- void (*get_tar_dir_file_count)(void);
void (*add_addressbookToRead)(char *data);
void (*Set_CallVolume)(int value);
int (*Get_CallVolume)(void);
- uint8_t (*ble_is_ready)(void);
-
- void (*set_ble_falg)(bool falg);
void (*get_health_HEART_data_path)(char *path, uint8_t day,uint16_t max_size);
void (*ble_UpdateMainWeatherData)(void);
- void (*ble_add_message_index)(uint32_t old_index);
-
- uint32_t (*ble_get_message_index)(void);
- void (*SendDtfmStrNumberToCat1)(char ch) ;
void (*ble_mp3_list_update)(void);
bool (*IS_free_save_Mp3)(uint32_t size);
return;
}
+void set_sedent_param_( msg_sedent_set_param_info_t * data)
+{
+ OHOS::ConfigModel *p_ConfigModel = OHOS::ConfigModel::GetInstance();
+
+ p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_SEDENTARY_SWITCH,data->sedent_on);
+
+ p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_SEDENTARY_REMINDERTIME,data->sedent_time );
+
+ p_ConfigModel->set_condigData_Int(OHOS::ConfigModel::CONFIGMODEL_ITEM_SEDENTARY_INTERVAL,data->frequenc);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"开关:%d\r\n",data->sedent_on);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"久坐提醒时间段:%d\r\n",data->sedent_time);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"久坐提醒时间间隔(单位小时):%d\r\n",data->frequenc);
+
+ // set_sedentary_data();
+ return;
+}
// bool IS_free_save_Mp3_(uint32_t size)
bleInstruct_t.get_brigthness= get_brigthness_;
bleInstruct_t.set_ScreenDuration= set_ScreenDuration_;
bleInstruct_t. get_ScreenDuration=get_ScreenDuration_;
+ bleInstruct_t.set_sedent_param=set_sedent_param_;
- bleInstruct_t.ble_disconnect_ok=null_doing;
- bleInstruct_t.ble_connect_ok=null_doing;
- bleInstruct_t.hand_watch_first_time_Paired=null_doing;
-
}
#endif
\ No newline at end of file
msg_sedent_set_param_info_t sedent_data={0};
sedent_data.sedent_on=data[0];
- // uint32_t sedent_on_time=data[1];
- // sedent_data.sedent_time |= sedent_on_time<<24;
-
- // sedent_on_time=data[2];
- // sedent_data.sedent_time |= sedent_on_time<<16;
-
- // sedent_on_time=data[3];
- // sedent_data.sedent_time |= sedent_on_time<<8;
-
- // sedent_on_time=data[4];
- // sedent_data.sedent_time |= sedent_on_time<<0;
memcpy_s( &sedent_data.sedent_time,4,&data[1],4);
sedent_data.frequenc = data[5];
- // set_sedent_param(&sedent_data);
+ set_sedent_param(&sedent_data);
sendBuf[17] = 1;
sendBuf[18] = Calculate_CRC(sendBuf,18);
if(now_cjson == NULL)
{
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,"天气 JSON解析错误\n");
+ cJSON_Delete(root);
return ;
}
int humidity=0;
cJSON *address_cjson = cJSON_GetObjectItem(root, "address");
+ if(address_cjson==NULL)
+ {
+ cJSON_Delete(root);
+ return;
+ }
char*city=NULL;
char*subLocality=NULL;
cJSON *daily = cJSON_GetObjectItem(root, "daily");
if(daily==NULL)
{
+ cJSON_Delete(root);
return ;
}
int count= cJSON_GetArraySize(daily);