基于阿里云IoT平台OTA进行APP确认升级的方案

APP确认升级的使用场景

对于家居类及个人消费电子类的物联设备,基于用户体验的考虑,生产企业一般会为消费者提供通过手机APP进行确认升级的功能,典型的使用场景是通过手机APP对手环进行升级,如下图所示。本文主要介绍APP确认升级的基本流程,及如何基于阿里云IoT平台的OTA实现APP确认升级。

基于阿里云IoT平台OTA进行APP确认升级的方案


APP确认升级流程

阿里云IoT平台为租户提供了APP确认升级的产品能力,租户通过自己的云平台对接OTA相关的开放接口即可实现APP确认升级的功能。

升级流程如下图所示:

基于阿里云IoT平台OTA进行APP确认升级的方案

整个流程中涉及4个相关角色,阿里云IoT平台、租户云平台、消费者手机app、消费者设备。

流程说明:

1、发起需要app确认的升级任务

通过创建批次任务的开放接口(CreateOTAStaticUpgradeJob,CreateOTADynamicUpgradeJob)

,或者通过阿里云IoT物联网平台的控制台页面发起待APP确认的批次升级任务。

  • 通过开放接口创建时注意设置NeedConfirm参数为true
  • 通过控制台页面创建批次任务时注意选择"APP确认升级"为"是",如下图所示:

基于阿里云IoT平台OTA进行APP确认升级的方案

  • 在发起批次升级任务前,需要上传并验证升级包,请参考阿里云IoT平台 OTA的相关文档

2、租户云平台查询设备是否有待确认的升级任务

待用户APP发起请求查看指定设备是否有待确认的升级任务时,租户云平台需要通过开放接口ListOTAUnfinishedTaskByDevice查询

阿里云IoT平台不支持消费者用户身份,消费者app无法直接进行与阿里云IoT平台通信。这一步需要通过租户的云平台中转后调用接口实现,注意需要设置设备身份信息(ProductKey+DeviceName或者IotId),设置TaskStatus参数为CONFIRM。

3、在消费者用户手机端app上显示待升级信息

若是有待确认的升级,租户云平台可以按自己的业务诉求返回给用户相关的升级说明信息。

4、消费者在手机APP端确认升级

消费者在APP上查看后确认进行升级,租户云平台调用开放接口ConfirmOTATask进行升级任务确认。


6、设备收到升级通知进行升级

确认后,阿里云IoT平台会将升级信息推送给设备(若批次任务创建时"云端主动推送"选择的是"否",则需要设备主动拉取);设备下载升级包后进入升级过程,升级过程中上报升级进度,升级成功后上报新的版本号。


设备确认升级的扩展说明

上述内容主要讲述了基于阿里云IoT平台OTA产品进行APP确认升级的流程。确认升级从是否在设备端进行确认的角度考虑可以分为两大类:

  • 设备端进行确认升级
  • 非设备端进行确认升级(消费者端APP确认升级是其中一种模式)


其区别如下:

设备端确认升级

非设备端确认升级

确认端

在接入IoT平台的设备端的显示屏进行确认升级

通过有别于阿里云IoT平台、联网设备端的第三方进行确认升级

适用设备范围

有显示屏,可操作的设备

可升级的所有类型的设备

适用业务场景

设备的最终适用用户进行确认升级

  • 消费者用户通过手机app确认自己的设备可以升级
  • 企业内部重点保障设备的OTA需要分级管控的场景

设备端升级任务可见时机

在升级任务创建并推送至设备后

在第三方确认后

是否需要云端支持

不需要云端的确认升级能力

需要云端的确认升级能力

是否需要租户云平台开发

可以不需要租户的云平台系统,仅通过阿里云IoT平台的OTA控制台页面及设备端对接即可实现。

需要租户在其平台系统进行第三方确认相关业务链路的开发

典型案例

手机软件升级

手环OTA升级

上一篇:桌面信息软件Desktop Info配置


下一篇:阿里云AIoT物联网平台如何实现设备全球就近接入