应用程序 打包、安装和升级
概述
开发完成后,DejaOS 应用程序需要打包并部署到目标设备。典型流程如下:
- 购买少量开发设备进行调试,完成 JavaScript 应用程序开发。
- 打包应用程序。
- 将打包的应用程序安装或升级到多台生产设备。
应用程序打包
您可以通过 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 升级基本原理
- 将
.dpk文件部署到 Web 服务上,并计算出文件的 MD5 值(用于完整性校验)。 - 将
.dpk文件对应的 HTTP URL 推送给设备(通常可以通过二维码或网络消息通知设备)。 - 设备根据 URL 下载
.dpk文件,并放置在特定的系统目录下。 - 设备重启后,系统会自动检测并安装
.dpk文件,覆盖旧版本的应用。
实现建议
建议在应用程序中使用内置的 dxOta 组件添加升级逻辑。dxOta 封装了上述下载和安装过程,您只需要准备好 .dpk 文件并部署服务。
dxOta.updateHttp:通过 HTTP URL 下载并升级。dxOta.updateFile:通过本地文件路径直接升级。
参考资料
- GitHub 示例代码:dw200 应用程序扫二维码升级示例
- GitHub 示例代码:dw200 应用程序网络批量升级示例
- OTA 详细说明:请参考 OTA 最佳实践。