OTA在线升级

在开发调试初期,我们可以通过Debugger(调试器)来进行App的本地升级,当产品开发完成以后,如果需要更新App版本或者升级固件,而又不方便去现场,这时如果设备能够连接互联网,我们则可以通过OTA(Over The Air的缩写)的方式来远程升级App和固件。

关于OTA升级我们有两种方式,我们可以直接使用物一世的云系统进行OTA升级,也可以在自己的Web服务器上部署OTA升级,只要能该服务器能通过HTTP访问并能下载文本文件即可。下面介绍如何使用自己的Web服务器来进行OTA升级:

1、准备一台外网能访问的Web服务器,在服务器Web服务的根目录下(如 /var/www/html/)新建一个ota目录,在目录下上传一个测试文件,如1.txt。在浏览器上输入URL测试一下是否能正常访问,如 http://iot.warexps.com/ota/1.txt,如果不能访问,请修改服务器Web引擎Apache/Nginx的相关配置允许目录访问权限;如果能正常访问,那么接着进行下面的步骤。

2、打开WeStudio新建一个工程,主界面上拖入一个按钮,鼠标双击该按钮,修改文本内容为"A",接着在service.ctl.ota控件中修改链接,如http://iot.warexps.com/ota/29/97f7702b2030b5bc198f8ce6784933fe/ota.json, 此时不用勾选“生成Json文件”。

将设备端的网线先断开,然后点WeStudio工具栏上的“构建”按钮,等待构建完成,点击“下载应用”按钮,在调试器中将App烧写到设备上。此时设备主界面显示按钮文字为"A"。

3、在WeStudio界面编辑区,主界面上双击按钮"A",修改文本内容为"B"。在service.ctl.ota控件中勾选“生成Json”, 点确定按钮保存。点工具栏“构建”按钮,等待构建完成,在构建完成对话框中,点击“打开文件夹”按钮,进入到当前工程的build目录下。

4、将build目录下的整个ota目录上传到Web服务的根目录,即可实现OTA的部署。复制我们在配置对话框中输入的OTA升级地址(http://iot.warexps.com/ota/29/97f7702b2030b5bc198f8ce6784933fe/ota.json),在浏览器上测试一下Json文件是否能正常打开。

接下来,插上网线,让设备连接网络,等待OTA升级完成,升级完成后会自动重启设备,在主界面上会显示更新后的按钮文字"B"。后面如果需要再次OTA升级,只需要重复上面的步骤3,步骤4即可。

注意:service.ctl.ota控件的模式属性默认是 0-Silent, 也就是静默升级,不需要用户来参与,当系统检测到有升级的时候会自动下载升级包并自动升级。模式1-Manual是手动模式,升级检测和升级操作都是需要调用ota控件的相应方法才会进行,具体可以查看例程"OTA升级"

results matching ""

    No results matching ""