快速开始
简介
离线包组件对能够使用离线功能的 H5 页面,使用“_bid=bid”作为链接后缀来标识,其中 bid 为对应离线包的 BID(Busyness ID或业务D)。首次加载离线包链接时,会检查本地是否已有离线包,如果有则直接加载并检查更新。如果本地没有则下载最新离线包。
准备工作
正式接入离线包SDK之前,需要登录TMF控制台,获取和配置开发离线包时所需的信息;并按照规定的目录结构,对H5文件进行打包。下面对接入前准备工作进行介绍。
创建和获取BID
在离线包的的使用中会涉及到 BID(Busyness ID)和 URL(H5 主页面路径)这些概念,在此对它们的获取进行说明。
- 登录 TMF 控制台,进入离线包模块,在左侧导航中,单击离线包管理。
- 在离线包管理页面,单击新增业务,用户通过管理后台创建业务时,需要定义一个业务 ID 即 BID,如下图所示,其中“weboffline_test_123”为 BID。
离线包证书配置
离线包的证书为 RSA 的公私钥,私钥需要通过TMF控制台上传,公钥用于客户端设置。
在客户私有部署的服务器上 RSA 公私钥,由客户自己生成和保管。
说明:证书生成方式请参见离线包证书配置。
打包离线包
- 访问的 url 为域名的形式
例如: pimweb.cs0309.3g.qq.com/testAk/ index.html
创建文件夹,文件夹命名为 pimweb.cs0309.3g.qq.com,然后将 H5 资源放入文件夹内,如下图所示:
注意:文件夹中的资源需要与访问的地址 pimweb.cs0309.3g.qq.com/testAk/index.html 对应上
index.html 对应上
pimweb.cs0309.3g.qq.com 为我们资源的域名,所有 H5 资源在该目录下的 testAk 目录下(注:testAk 目录不是必须的,也可以直接放在根目录下),H5 资源的存放和命名没有要求。
将 pimweb.cs0309.3g.qq.com 文件夹进行 zip 压缩,如下图所示:
- 访问的 url 为 ip:port 的形式
例如: 219.237.75.67:30010/testAk/ index.html
创建文件夹,文件夹命名为 219.237.75.67-30010(:要改为-),然后将 H5 资源放入文件夹内,如下图所示:
将 219.237.75.67-30010 文件夹压缩为 zip 格式
上传离线包
- 登录 TMF 控制台,进入离线包模块,在左侧导航中,单击离线包管理。
- 在离线包管理页面,单击添加离线包,用户通过管理后台离线包模块上传离线包。
下载离线包
URL 解释说明
如果您的 H5 部署到服务器上了,就会有个访问地址,例如:
http://www.baidu.com/tmf/index.html或http://10.0.0.1:8080/tmf/index.html
如果没有部署到服务器上,那就随便取个假的地址,例如:
http://xx.xx.xx/tmf/index.html或http://10.0.0.1:8080/tmf/index.html
注意:您的 H5 打包离线包的目录结构,需要与您的 URL 保持一致(下面具体描述),Webview 加载您的 URL 即可。
使用离线包的接口检查更新、下载和加载时,URL 的格式有两种:
- 第一种
url?_bid=xxx,表示访问这个 URL 时,它所需要的资源(例如图片、js 文件)会先从本地 bid 为 xxx 的离线包资源寻找,如果存在就加载本地资源,否则访问服务端资源。我们能得到完整的 URL 信息如下:
http://pimweb.cs0309.3g.qq.com/testAk/index.html?_bid=weboffline_test_123
第二种
url?_bids=main+depends,main 表示主包,主包必须放在最前面(index.html 资源所在的包),depends 表示依赖包。访问这个 URL 时它所需要的资源(例如图片、js 文件)会先从本地 BID 为 main 主包中加载,然后再到依赖包 depends 中加载,如果本地没有则访问在线资源。我们能得到完整的 URL 信息如下:
http://pimweb.cs0309.3g.qq.com/testAk/index.html?_bids=weboffline_test_123+common