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

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

APP确认升级的使用场景

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


APP确认升级流程

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

升级流程如下图所示:

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

流程说明:

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

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

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

  • 通过开放接口创建时注意设置NeedConfirm参数为true
  • 通过控制台页面创建批次任务时注意选择"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升级

相关文章
|
2月前
|
移动开发 前端开发 JavaScript
鸿蒙NEXT时代你所不知道的全平台跨端框架:CMP、Kuikly、Lynx、uni-app x等
本篇基于当前各大活跃的跨端框架的现状,对比当前它们的情况和未来的可能,帮助你在选择框架时更好理解它们的特点和差异。
293 0
|
6天前
|
存储 前端开发 安全
实现“永久登录”:针对蜻蜓Q系统的用户体验优化方案(前端uni-app+后端Laravel详解)-优雅草卓伊凡
实现“永久登录”:针对蜻蜓Q系统的用户体验优化方案(前端uni-app+后端Laravel详解)-优雅草卓伊凡
76 5
|
1月前
|
数据采集 数据可视化 API
驱动业务决策:基于Python的App用户行为分析与可视化方案
驱动业务决策:基于Python的App用户行为分析与可视化方案
|
3月前
|
消息中间件 缓存 小程序
婚恋交友相亲公众号app小程序系统源码「脱单神器」婚恋平台全套代码 - 支持快速二次开发
这是一套基于SpringBoot + Vue3开发的婚恋交友系统,支持微信公众号、Uniapp小程序和APP端。系统包含实名认证、智能匹配、视频相亲、会员体系等功能,适用于婚恋社交平台和相亲交友应用。后端采用SpringBoot 3.x与MyBatis-Plus,前端使用Vue3与Uniapp,支持快速部署和二次开发。适合技术团队或有经验的个人创业者使用。
250 8
|
4月前
|
安全 Linux 开发工具
【Azure Function】分享把Function App从.NET 6.0升级到.NET 8.0 Isolated的步骤
本文介绍了将Azure Function App从.NET 6.0升级到.NET 8.0 Isolated的步骤。.NET 6.0作为长期支持版本,生命周期至2024年11月结束。为确保持续支持,建议升级至更新版本。升级步骤包括安装.NET 8 SDK、更新Azure Functions Core Tools、修改项目文件目标框架为net8.0、更新兼容的NuGet包、本地测试以及重新发布到Azure。更多详细信息可参考官方文档。
219 9
|
5月前
|
数据采集 JSON 网络安全
移动端数据抓取:Android App的TLS流量解密方案
本文介绍了一种通过TLS流量解密技术抓取知乎App热榜数据的方法。利用Charles Proxy解密HTTPS流量,分析App与服务器通信内容;结合Python Requests库模拟请求,配置特定请求头以绕过反爬机制。同时使用代理IP隐藏真实IP地址,确保抓取稳定。最终成功提取热榜标题、内容简介、链接等信息,为分析热点话题和用户趋势提供数据支持。此方法也可应用于其他Android App的数据采集,但需注意选择可靠的代理服务。
214 11
移动端数据抓取:Android App的TLS流量解密方案
|
3月前
|
BI 开发工具 开发者
App全渠道统计方案:如何用一个工具整合所有获客渠道数据?
还在为地推、社群、广告等不同获客渠道的数据分散而烦恼吗?本文将教您如何用一个工具整合所有渠道数据,实现精准的渠道归因与效果分析。
115 0
|
7月前
|
应用服务中间件 Linux nginx
【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?Web App Linux 默认使用的 Nginx 版本是由平台预定义的,无法更改这个版本。
216 77
|
6月前
|
Web App开发 编解码 算法
布谷一对一直播源码开发:阿里云视频语音通话社交交友App的必备功能
在当今移动社交领域,一对一视频和语音通话功能已成为用户期待的基础配置。从熟人社交到陌生人交友,从专业咨询到情感陪伴,实时音视频互动能力直接决定了社交App的用户留存和市场竞争力。山东布谷科技将深入探讨一对一直播源码开发高质量一对一视频和语音通话功能的关键要素和技术实现方案。
布谷一对一直播源码开发:阿里云视频语音通话社交交友App的必备功能
|
5月前
|
数据采集 数据可视化 数据挖掘
基于Python的App流量大数据分析与可视化方案
基于Python的App流量大数据分析与可视化方案