1. 没有上报101,直接上报了201,看下LOG,其中的上报下载进度成功
case OTA_EVENT_REPORT_DOWNLOAD_PROGRESS_OK: {
ota_log_printf("Report download progress success\r\n");
if(ctx->download_info.range_next_end == ctx->task_info.size)
{
ctx->state = CTX_STATE_UPDATE;
break;
}
ctx->state = CTX_STATE_DOWNLOAD_PACKAGE;
break;
}
可以看出,如果文件OK 的话,进入CTX_STATE_UPDATE
然后
case CTX_STATE_UPDATE: {
OTA_Event_Handle(ctx, OTA_EVENT_custom_ready_update);
break;
}
直接就升级了。确实没101啥事啊
一脸懵逼啊,搞迷糊了,状态机和事件处理,就是要干什么事(状态机,主循环),发生了什么事(事件)。
原文:https://www.cnblogs.com/429512065qhq/p/13898642.html