小程序离线包是指在本地构建一个离线代码包,代码包内提供小程序运行中所需的所有代码和资源。将离线包集成到 Native 应用中,小程序运行时会优先加载本地的离线包,如果本地没有离线包,则从云端下载最新的资源包。
功能介绍
小程序离线包能力旨在为开发者提供更好的小程序体验,包括:
-
提升小程序启动速度。
当打开小程序时,如果本地已经有离线包,小程序会优先加载本地离线包,避免了网络请求的时间消耗,提升了小程序的启动速度。
-
兼容私有化部署方案。
由于小程序在运行时涉及到服务端请求,如果你的 App 是私有化部署的,但是并未将小程序服务同步私有化,那么小程序将无法正常运行。但是,通过离线包能力,你可以将小程序的代码和资源打包到本地,从而实现小程序的运行。
-
小程序自动更新策略限制。
如果你需要控制小程序的更新策略,使小程序永远保持在某个版本,那么可以通过构建离线包时指定某个小程序仅加载离线包。
👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。
构建离线包
离线包在未来会支持小程序开发者工具自动构建,目前还需要联系涂鸦辅助构建。需要构建离线包时,请提供如下信息:
thingsmart-bizbundle-miniapp
组件版本号。- 项目中集成的
thingsmart-bizbundle-XXXkit
相关业务能力组件版本号。 - 需要构建离线包的小程序
miniprogam
信息。
_miniprograms_info
[
{
"id": "xxxxx",// 小程序 id, 必传
"version": "1.2.3",// 小程序版本号, 需要限定版本时传入, 可选,指定了此参数,构建离线包时会以此版本号为准构建
"path": "pages/index/index",// 小程序入口页面, 可选
"pid": "xxxxx",// 面板小程序对应的 productId, 面板小程序时传入
"onlyloadoffline": "true"// 小程序是否仅加载离线包, 可选
},
...
]
_container_version
项目中依赖的 thingsmart-bizbundle-miniapp
组件对应的版本号。
_dependencies_kits
- 项目中依赖的
thingsmart-bizbundle-XXXkit
相关组件对应的版本号 - 需要统计到项目中依赖的所有
thingsmart-bizbundle-XXXkit
相关组件,包括thingsmart-bizbundle-basekit
、thingsmart-bizbundle-bizkit
等。
集成离线包
离线包构建的产物为一个压缩包(.zip
)文件,名称为:miniapp_offline.zip
。
- 将此压缩包文件去除后缀名,重命名为
miniapp_offline
。 - 复制
miniapp_offline
到项目工程assets
下,并编译构建。
运行验证
离线包集成完成后,可以通过如下方式验证:
- 打开小程序前,将手机断网。
- 打开小程序,如果小程序能正常运行,说明离线包集成成功。
👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。