Skip to content

hybrid

  • 移动端占大部分流量,远超 PC,APP 开发
  • APP 中有很大比例的前端代码

hybrid 存在价值

  • 可以快速迭代更新【关键】无需 app 审核
  • 体验流畅(和 native app 体验基本一致)
  • 减少开发和沟通成本,双端公用一套代码

webview

  • 是 app 中的一个组件
  • 用于加载 h5 页面,即一个小型的浏览器内核

使用场景

  • 不是所有场景都适合使用 hybrid
  • 使用 Native App 体验要求极致,变化不频繁
  • 使用 hybrid 体验要求高,变化频繁
  • 使用 h5 体验无要求,不常用

hybrid 具体实现

  1. 前端做好静态页面,将文件交给客户端
  2. 客户端拿到前端静态页面,以文件形式存储在 app 中
  3. 客户端在一个 webview 中
  4. 使用 file 协议加载静态页面
  • hybrid是客户端和前端的混合开发
  • hybrid存在的核心意义在于快速迭代,无需审核

思考(目的、可行途径)

  • 启动(更新)要替换每个客户端的静态文件
  • 在客户端来做上面条
  • 客户端去server下载最新静态文件
  • 前端维护server上的静态文件

遗留问题

  • app发布后,静态文件如何实时更新
  • 静态页面如何获取内容

对上述问题的流程补充

  1. 分版本,有版本号,如201801010900
  2. 将静态文件压缩成zip包,上传到服务端
  3. 客户端每次启动,都去服务端检查版本号
  4. 如果服务端版本号大于客户端版本号,就去下载最新的zip包
  5. 下载完后解压包,然后将现有文件覆盖

要点

  1. 服务端的版本和zip包维护
  2. 更新zip包前,先对比版本号
  3. zip下载解压和覆盖

共 20 个模块,1301 篇 Markdown 文档。