// ==================== 恢复出厂设置相关函数 ====================
- void ThunderBirdModel::restore_factory_settings()
+ bool ThunderBirdModel::restore_factory_settings()
{
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "恢复出厂");
//删除用户数据
- uapi_delete_folder("/user/userdata");
+ if(uapi_delete_folder("/user/userdata")==-1)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "恢复出厂: 删除用户数据失败 /user/userdata");
+ return false;
+ }
//删除kvstore
- uapi_delete_folder("/user/kvstore");
+ if(uapi_delete_folder("/user/kvstore")==-1)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "恢复出厂: 删除kvstore失败 /user/kvstore");
+ return false;
+ }
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "恢复出厂: 成功");
+ //重启
+ uapi_reboot_device();
+ return true;
}
// ==================== 新手引导相关函数 ====================
static uint32_t ln_conversation_flag_at(uint8_t *para, uint32_t paraLen, char *strCommonCmd);
static uint32_t ln_push_text_at(uint8_t *para, uint32_t paraLen, char *strCommonCmd);
+//恢复出厂设置相关AT命令函数声明
+static uint32_t ln_factory_at(uint8_t *para, uint32_t paraLen, char *strCommonCmd);
+
/* 将 PCM 文件按 10ms(160点) 分帧喂给 VAD 并打印结果 */
static int AnalyzePcmFileWithVad(const char *pcm_path)
{
return ERRCODE_SUCC;
}
+/* 恢复出厂设置: AT^LN_FACTORY */
+static uint32_t ln_factory_at(uint8_t *para, uint32_t paraLen, char *strCommonCmd)
+{
+ VAD_UNUSED(para); VAD_UNUSED(paraLen); VAD_UNUSED(strCommonCmd);
+ printf("[LN][FACTORY]\n");
+ do_restore_factory_setting();
+ printf("[LN][FACTORY] ok\n");
+ return ERRCODE_SUCC;
+}
static const at_cmd_table_t g_ln_api_cmd[] = {
/* ----------------------------------- VAD ---------------------------------- */
{(char *)"AT^VAD_INIT", vad_init, (char *)"初始化 VAD"},
/* 对话控制 */
{(char *)"AT^LN_CONV_FLAG", ln_conversation_flag_at, (char *)"设置对话标志: AT^LN_CONV_FLAG=1/0"},
{(char *)"AT^LN_PUSH_TEXT", ln_push_text_at, (char *)"推送文本到UI: AT^LN_PUSH_TEXT=hello world"},
+
+ //恢复出厂设置
+ {(char *)"AT^LN_FACTORY", ln_factory_at, (char *)"恢复出厂设置: AT^LN_FACTORY"},
};