跳到主要内容

应用程序打包、安装和升级

概述

开发完成后,DejaOS 应用程序需要打包并部署到目标设备。典型流程如下:

  1. 购买少量开发设备进行调试,完成 JavaScript 应用程序开发。
  2. 打包应用程序。
  3. 将打包的应用程序安装或升级到多台生产设备。

应用程序打包

您可以通过 VSCode 中的 DejaOS 插件一键打包,生成 .dpk 文件:

应用程序打包图


应用程序安装

方案一:使用具有内置升级能力的标准产品应用程序

购买生产设备(默认预装官方标准应用程序),然后使用以下功能进行远程升级:

  • 按标准产品类型
    • 门禁标准产品支持 MQTT 升级。
  • 按设备能力
    • 二维码扫描设备支持扫码升级(如扫描包含升级链接的二维码)。
    • 注:二维码门禁设备将具备双重升级能力(二维码扫描 + MQTT)。

方案二:官方生产预装应用程序

将完成的 .dpk 应用程序包提供给 DejaOS 官方。官方将分配版本 ID(如 vf205_v12_dejaxxx_2.0.0)并在工厂生产时预装到设备上。此方案适合大批量设备。

注意:官方仅确保应用程序能够启动,默认不进行详细业务逻辑测试。此外可能涉及额外的定制费用。

方案三:手动安装

  • DejaOS 2.1.0+: 使用设备端管理模式,请参考 管理 App 文档。适用于小批量或多轮迭代项目场景。
  • DejaOS 2.0.0: 使用 RS485 + dejaos_tools 安装 .dpk 应用程序包,适用于小批量或多轮迭代项目场景。

应用程序 OTA 升级

应用程序升级由应用程序自身实现,提供了高度的灵活性和定制化能力。

OTA 升级基本原理

  1. .dpk 文件部署到 Web 服务上,并计算出文件的 MD5 值(用于完整性校验)。
  2. .dpk 文件对应的 HTTP URL 推送给设备(通常可以通过二维码或网络消息通知设备)。
  3. 设备根据 URL 下载 .dpk 文件,并放置在特定的系统目录下。
  4. 设备重启后,系统会自动检测并安装 .dpk 文件,覆盖旧版本的应用。

实现建议

建议在应用程序中使用内置的 dxOta 组件添加升级逻辑。dxOta 封装了上述下载和安装过程,您只需要准备好 .dpk 文件并部署服务。

  • dxOta.updateHttp:通过 HTTP URL 下载并升级。
  • dxOta.updateFile:通过本地文件路径直接升级。

参考资料