From: Caisking <3449750381@qq.com> Date: Sat, 14 Sep 2024 11:12:36 +0000 (+0800) Subject: 安全模式:下载修复文件增加repari_file_start接口 X-Git-Tag: release_V1.2.70_20241020_135402~474 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F978%2F1;p=mirrors%2FFD230.git 安全模式:下载修复文件增加repari_file_start接口 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/include/SafeModeManagerModelC.h b/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/include/SafeModeManagerModelC.h new file mode 100644 index 000000000..3f05a59eb --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/include/SafeModeManagerModelC.h @@ -0,0 +1,16 @@ + +#ifndef SAFE_MODE_MANAGER_MODEL_C_H +#define SAFE_MODE_MANAGER_MODEL_C_H + +#ifdef __cplusplus +extern "C" { +#endif + +//进行修复开始 +void repari_file_start(void); + +#ifdef __cplusplus +} +#endif + +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/src/SafeModeManagerModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/src/SafeModeManagerModel.cpp index efbf921ba..b4a6effe9 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/src/SafeModeManagerModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/safemodemanager/src/SafeModeManagerModel.cpp @@ -9,6 +9,7 @@ #include "safemodemanager/include/RepairView.h" #include "safemodemanager/include/ResourceCheckView.h" #include "safemodemanager/include/SafeModeManagerModel.h" +#include "safemodemanager/include/SafeModeManagerModelC.h" #include "safemodemanager/include/SafeModeManagerView.h" #include "broadcast_feature.h" @@ -31,6 +32,11 @@ const char *get_version_string(void); } static const char *CHECK_DIFFERENTIAL_FILE = "/system/check_differential.txt"; + +void repari_file_start() { + OHOS::SafeModeManagerModel::GetInstance()->RepairStart(); +} + namespace OHOS { SafeModeManagerModel *SafeModeManagerModel::GetInstance(void) { @@ -52,14 +58,14 @@ static void httpc_download_result(void *arg, httpc_result_t httpc_result, "srv_res %d, err %d\n", httpc_result, rx_content_len, srv_res, err); if (httpc_result == HTTPC_RESULT_OK) { - http_single_download_stop(); OHOS::SafeModeManagerModel::GetInstance()->AddRepairCount(); - //开始下一个文件 - OHOS::SafeModeManagerModel::GetInstance()->RepairStart(); + //发消息进行重新开始 + do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_DOWNLOAD_RES, nullptr, 0); } else { //结束 OHOS::SafeModeManagerModel::GetInstance()->RepairEnd(); } + http_single_download_stop(); file_total_len = 0; return; } diff --git a/code/sdk/drivers/peripheral/utils/custom_cmd_service.c b/code/sdk/drivers/peripheral/utils/custom_cmd_service.c index 04dbbbc07..8987dc0fa 100644 --- a/code/sdk/drivers/peripheral/utils/custom_cmd_service.c +++ b/code/sdk/drivers/peripheral/utils/custom_cmd_service.c @@ -39,6 +39,8 @@ #include "bletest.h" +#include "safemodemanager/include/SafeModeManagerModelC.h" + typedef struct { uint8_t cmd; @@ -255,6 +257,9 @@ static void custom_cmd_service_check_task(void const *arg) case CUSTOM_CMD_MSG_CHECK_RES: resfile_checksum_thread(); break; + case CUSTOM_CMD_MSG_DOWNLOAD_RES: + repari_file_start(); + break; default: PRINT("Unknown CUSTOM_CMD_MSG cmd 0x%02X \r\n", mail.cmd); break; diff --git a/code/sdk/drivers/peripheral/utils/custom_utils.h b/code/sdk/drivers/peripheral/utils/custom_utils.h index eacc91c7b..7be63e2da 100644 --- a/code/sdk/drivers/peripheral/utils/custom_utils.h +++ b/code/sdk/drivers/peripheral/utils/custom_utils.h @@ -217,6 +217,7 @@ uint32_t uapi_calendar_store_date(void); #define CUSTOM_CMD_MSG_BR_CONNECT 0x0C #define CUSTOM_CMD_MSG_CHECK_RES 0x0D +#define CUSTOM_CMD_MSG_DOWNLOAD_RES 0x0E typedef enum { BR_HFP_CONNECT=1, BR_HFP_DISCONNECT,