一、Hybrid,为什么用?
简介:
hybrid即“混合”,即前端和客户端的混合开发
需前端开发人员和客户端(原生ios或者andriod)开发人员配合完成
某些环节也可能涉及到server端
优势:
可以快速迭代更新【关键】,无须app审核,(思考为何?,因为没有权限操作手机系统的API,不会有安全隐患)
体验流畅(和NA的体验基本类似)-肉眼区别不出来
减少开发和沟通成本,双端公用一套代码(ios和android)
(低成本、高效率、跨平台、迭代快、体验流畅)
webview:
是app中的一个组件,app可以有webview,也可以没有
用于加载H5页面等,即一个小型的浏览器内核,是个统称
http协议和file协议区别
file协议:本地文件,快 file://
http/https协议:网络加载,慢 http://
hybrid实现流程
不是所有场景都适合hybrid:
使用Native:体验要求极致,变化不频繁(如头条的首页)
使用hybrid:体验要求高,变化频繁(如头条的新闻详情页)
使用H5:体验无要求,不常用(如举报,反馈等页面)
具体实现:
前端做好静态页面,(html,css,js)将文件交给客户端
客户端拿到前端静态页面,以文件形式存储在app中
客户端在一个webview中,使用file协议加载静态页面
二、更新上线流程
分版本,有版本号,如201803211015
将静态文件压缩成zip包,上传到服务端
客户端每次启动,都去服务端检查版本号
如果服务端版本号大于客户端版本号,就去下载最新的zip包
下载完之后解压包,然后将现有文件覆盖
要点1:服务端的版本和zip包维护
要点2:更新zip包之前,先对比版本号
要点3,zip包下载解压和覆盖(静态包太多容易导致app尺寸急剧增大)
网友评论