hybrid混合开发之“只知其一;不知其二”(上)

最近的开发过程当中,接触的与 app混合开发的比较多,因此忙完一段时间以后,稍做总结,在这篇文章中,主要说一下我对“hybird是什么?为什么使用 hybird”的一些理解。前端

首先hybird的定义

最简单的文字解释就是:前端和客户端的混合开发java

其次hybird的存在价值

  • 能够快速迭代更新,无需应用商店审核ios

    客户端的代码(安卓用 java,ios 用oc 或者swift),能够访问手机的一些比较隐私或者深层次的东西,例如横屏,竖屏,相册,地理定位,通信录等等web

  • 体验流畅
  • 减小开发成本或者沟通成本,双端公用一套代码swift

webview的内容

  • 是 app的一个控件
  • 用来加载H5页面,是一个小型的浏览器内核
  • 是一个小型的浏览器内核,主要用来承载H5页面的加载和显示

file://协议

file协议用于访问本地计算机中的文件,就比如经过任务管理器打开文件同样,主要是针对本地,即 file 协议是访问本地的资源浏览器

  • 直接打开本地的H5界面就是使用了 file 协议
  • 优势:读取本地资源,速度很快

场景划分

  • 不是全部的场景都适合使用 hybird
  • 使用NA:体验要求极致,变化不频繁
  • 使用hybird:产品的稳定功能,体验要求高,迭代频繁(新闻详情)
    • 优势:1.体验更好;2.可快速迭代更新,无需审核
    • 缺点:1.开发成本高;2.不利于联调测试,查 bug 很难;3.运维成本高
  • 使用H5:体验无要求,不经常使用(如举报,反馈,单次的运营活动或者不经常使用的功能)
    • 优势:开发速度快
    • 缺点:体验很差

hybird实现的流程

  • 前端作好静态页面,将文件交给客户端
  • 客户端拿到静态文件以后,以文件的形式存储在 app 中
  • 客户端在一个 webview 中
  • 使用file 协议加载静态文件
http 协议,https 协议:(加载远程资源的协议)
http 就是超文本传输协议的缩写,用来从万维网服务器传输超文本到本地浏览器的协议,基于TCP/IP通讯来传输数据。http 协议工做于客户端-服务端架构上,浏览器做为 http 客户端经过 url 向 http 服务端发送请求,服务端接收到请求以后,向客户端发送请求。
http 使用统一资源标识符 url 来传输数据和创建链接。

URI的结构为:
scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]
例如:NgariHealth:// 就是打开健康导航 app

url 包含的几个部分:
一、协议
二、域名
三、端口(若是省略端口,则采用默认端口)

注:http 协议的端口80,8080,8081
        https 协议的端口是443
        ssh(安全登陆),scp(文件传输),端口重定向,端口为22
        
四、虚拟目录:虚拟目录不是必须部分,是从第一个/开始到左后一个/结束
五、文件名:从域名最后一个/开始到“?”结束
六、锚:从#开始到最后都是锚
七、参数:从?开始到#为止,中间都是参数,参数能够是多个参数,中间以&做为分隔符

相关文章
相关标签/搜索