OTA服务

更新时间:2018-04-08 13:54:12

linkkit_ota_init

定义描述

函数原型 int linkkit_ota_init(handle_service_fota_callback_fp_t callback_fp)
描述 初始化 OTA 服务,并安装回调函数(需编译设置宏 SERVICE_OTA_ENABLED )

请求参数

参数
类型
必填
描述
备注
callback_fp
handle_service_fota_callback_fp_t
OTA回调函数
OTA 的回调函数,当 SDK 侦测到新的固件版本,则会进入此回调函数,由用户决定是否更新固件。

示例

static void fota_callback(service_fota_callback_type_t callback_type, const char* version)
{
    sample_context_t* sample;

    assert(callback_type < service_fota_callback_type_number);

    sample = &g_sample_context;

    /* temporarily disable thing when ota service invoked */
    sample->thing_enabled = 0;

    linkkit_invoke_ota_service(sample->ota_buffer, OTA_BUFFER_SIZE);

    sample->thing_enabled = 1;

    /* reboot the device... */
}


linkkit_ota_init(fota_callback);

返回值

详细描述
0 OTA 初始化成功
-1 OTA 初始化失败

linkkit_invoke_ota_service

定义描述

函数原型 int linkkit_invoke_ota_service(void* data_buf, int data_buf_length)
描述 执行 OTA 服务

请求参数

参数
类型
必填
描述
备注
data_buf
void*
OTA接收buffer
此 buffer 被用于接收固件数据
data_buf_length
int
OTA 接收buffer大小
OTA buffer 的大小对固件的接收速率也有影响

示例

static void fota_callback(service_fota_callback_type_t callback_type, const char* version)
{
    sample_context_t* sample;

    assert(callback_type < service_fota_callback_type_number);

    sample = &g_sample_context;

    /* temporarily disable thing when ota service invoked */
    sample->thing_enabled = 0;

    linkkit_invoke_ota_service(sample->ota_buffer, OTA_BUFFER_SIZE);

    sample->thing_enabled = 1;

    /* reboot the device... */
}

返回值

详细描述
0 OTA 服务执行成功
-1 OTA 服务执行失败

results matching ""

    No results matching ""