hybrid混合开发之“一知半解”(上)

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

首先hybird的定义

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

其次hybird的存在价值

  • 可以快速迭代更新,无需应用商店审核

    客户端的代码(安卓用 java,ios 用oc 或者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 包含的几个部分:
1、协议
2、域名
3、端口(如果省略端口,则采用默认端口)

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

猜你喜欢

转载自www.cnblogs.com/D-Y-W/p/10576362.html