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