cat1_print_info("=== AT^HTTPDLINIT: Initializing HTTP file download service (SPI) ===\n");
- int ret = http_file_download_init();
+ int ret = http_file_download_init(NULL);
if (ret == 0) {
cat1_print_info("AT^HTTPDLINIT: HTTP file download service initialized successfully\n");
cat1_print_info(" - SPI service initialized\n");
// 拼接完整路径:/user/userdata/leiniao/emoji + 用户输入的路径
char full_path[512];
- // const char *base_path = "/user/userdata/leiniao/emoji";
- const char *base_path = "/user/res/video/Default";
+ const char *base_path = "/user/userdata/leiniao/emoji";
+ // const char *base_path = "/user/res/video/Default";
// 检查总路径长度限制
if (strlen(base_path) + strlen(video_path) + 1 > sizeof(full_path)) {
//添加睡眠投票
uapi_ln_add_vote();
- int ret = uapi_ln_download_file_resume(url, save_path);
+ // int ret = uapi_ln_download_file_resume(url, save_path);
+ int ret = http_file_download_start(url, save_path, 300*100);
if (ERRCODE_SUCC != ret)
{
for (int i = 1; i <= max_retries; i++)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD_RESUME_WITH_RETRY] 重试 %d/%d", i, max_retries);
- ret = uapi_ln_download_file_resume(url, save_path);
+ // ret = uapi_ln_download_file_resume(url, save_path);
+ ret = http_file_download_start(url, save_path, 300*100);
if (ERRCODE_SUCC == ret)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD_RESUME_WITH_RETRY] 重试成功 %d", i);
#include "wearable_log.h"
#include "ln_api_interface.h"
#include "pm_definition.h"
+#include "http_file_download_client.h"
// 产品名称:Amby Box
// 产品型号:AB101
uapi_delete_files(LN_DEVICE_SCREEN_IMAGE_FILE);
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[DEVICE_CHARACTER] 屏保下载URL: %s, 保存路径: %s", url, save_path);
uapi_ln_set_file_download_type(LN_FILE_DOWNLOAD_TYPE_SCREEN_IMAGE);
+
+ // 初始化HTTP文件下载服务
+ if (http_file_download_init(NULL) != 0)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD_RESUME_WITH_RETRY] 初始化下载服务失败");
+ return;
+ }
+
int ret = uapi_ln_download_file_resume_with_retry(url, save_path, 5);
if (ret == 0)
{
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DEVICE_CHARACTER] 屏保下载结束,ret=%d", ret);
uapi_ln_set_file_download_type(LN_FILE_DOWNLOAD_TYPE_NONE);
+
+ // 反初始化HTTP文件下载服务
+ http_file_download_deinit();
+
/* 一次性使用后释放 */
free(g_ln_pending_screen_image_url);
g_ln_pending_screen_image_url = NULL;
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD] no emojis to download");
return;
}
+
+ // 初始化HTTP文件下载服务
+ if (http_file_download_init(NULL) != 0)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD_RESUME_WITH_RETRY] 初始化下载服务失败");
+ return;
+ }
+
// 下载表情
ln_emoji_download(&g_emoji_package);
uapi_ln_set_file_download_type(LN_FILE_DOWNLOAD_TYPE_NONE);
+
+ // 反初始化HTTP文件下载服务
+ http_file_download_deinit();
}
/* 解析下载表情命令JSON */
clientData.postContentType = (char *)"application/json";
// 打印请求请求响应
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[EMOJI_REPORT_STATUS] request body: %s", body);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[EMOJI_REPORT_STATUS] request body: %s", body);
// 使用说明:
// - 该接口用于设备向服务器同步表情下载/删除状态
// - 设备执行表情下载或删除操作成功后,必须调用此接口
// 目前是立即提醒的所以直接下载并播放
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[JSON_PARSE] download audio:执行下载并播放\n");
uapi_delete_files(LN_REMINDER_AUDIO_FILE);
+
+ #ifdef SUPPORT_CAT1_SERVICE
+ cat_sync_timer_control(0);
+ #endif
+
+ // 初始化HTTP文件下载服务
+ if (http_file_download_init(NULL) != 0)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[DOWNLOAD_RESUME_WITH_RETRY] 初始化下载服务失败");
+ return;
+ }
+
int ret = uapi_ln_download_file_resume_with_retry(g_schedule_reminder.reminderAudioUrl, LN_REMINDER_AUDIO_FILE, 3);
if (ret == ERRCODE_SUCC)
{
}
/* -------------------------------------------------------------------------- */
}
+
+ // 反初始化HTTP文件下载服务
+ http_file_download_deinit();
+
+ #ifdef SUPPORT_CAT1_SERVICE
+ cat_sync_timer_control(1);
+ #endif
}
else
{