webview基础了解

作者: 麻辣烫里面放麻花 | 来源:发表于2018-07-27 09:53 被阅读13次

author=“jolting”

date=“2018-07-27”

今天开发人员进行知识分享,分享主题是:安卓原生与H5的交互,开发讲的什么方法调用啥的,没记住,也想着不用去了解,大致了解一下webview,分享结束还有许多疑问,然后自己回忆整理了一下,有什么不对的欢迎指出

1.webview是什么?作用是什么?和浏览器有什么关系?

Webview 是一个基于webkit引擎,可以解析DOM 元素,展示html页面的控件,它和浏览器展示页面的原理是相同的,所以可以把它当做浏览器看待。(chrome浏览器也是基于webkit引擎开发的,Mozilla浏览器是基于Gecko引擎开发的)

Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直接使用了Chrome。

2.webview主要用于什么地方?或者说什么需求下会使用到webview?

个人理解,电脑上展示html页面,通过浏览器打开页面即可浏览,而手机系统层面,如果没有webview支持,是无法展示html页面,所以webview的作用即用于手机系统来展示html界面的

所以它主要在需要在手机系统上加载html文件时被需要

3.一个原生应用调用html页面的过程?

1.原生应用加载html页面(加载页面的方式可能有多种,比如加载本地写好的html文件,或者放置在服务器的文件)

2.加载完成,展示就是通过webview来渲染展示的,如果系统没有webview,则是无法渲染展示html的

3.1,2步其实一个原生应用调用html页面过程已经完成了,那么页面不光展示,有时候可能还需要交互,这里的话就需要写一些方法了,比如html界面的按钮需要调用系统原生的东西(比如:拍照,系统的文件,相册之类的)。原生端就负责维护html调用的接口,然后按照需要返回(原生端充当一个server的角色,html充当一个client角色)

4.使用webview的好处?

原生APP是将页面的布局设计,以及业务代码打包然后用户下载安装使用,而webview是通过加载html文件来进行页面的展示,当需要更新页面布局的或者业务逻辑变更时,如果是原生的APP就需要修改前端内容,升级打包,重新发布才可以使用最新的。

通过webview方式的页面则只需要修改html代码或者js文件(如果是从服务器端获取,只要新的文件部署完成),用户重新刷新就可以使用更新后的,无需通过下载安装的方式完成升级

5.安卓系统内置浏览器,自带浏览器?内置浏览器和自带浏览器是一个概念?

引用开发回答给我的:安卓系统内置浏览器和我们在手机中用的浏览器App(如uc浏览器,google浏览器,QQ浏览器)不是一个概念,webView是Google 官方为开发者提供的一个浏览器控件,我们开发者可以集成到App中,而我们用的各个厂商的App浏览器产品好多并不是用的谷歌官方提供的webView控件,他们集成的都是经过自己深度定制了的类似webView这么个东西。

基于第一句:我的疑问是在网络上看有说:国内安卓系统是没有内置chrome,国外的话可能会内置chrome

开发回答:“说错了,没有内置一说,国内是没有内置的浏览器,我刚才说的内置的指的是谷歌官方提供给开发者的浏览器内核,当然能开发浏览器内核的当然不止谷歌,还有很多其他第三方厂商”

基于最后一句话,我的理解是:主流的浏览器比如UC,都是基于webkit引擎的 webview的引擎话也是webkit 可以理解为webview和各大浏览器相当于属于不同的控件?

开发回答:对,就是这么个道理

至此webview,内置浏览器,以及自带浏览器的概念就有了大致的了解了

国内手机的自带浏览器不是chrome,主要是版权的原因,自带的浏览器都是手机厂商基于国内主流的几大浏览器自己定制,然后发布在自己手机系统版本中.不过国内几大浏览器厂商如QQ浏览器,UC浏览器、都是基于webkit引擎的

iphone的自带浏览器是Safari,Safari浏览器的内核是webkit

6.APP webview展示的页面和通过手机浏览器打开的页面?

基于6,不管是ios还是安卓,自带浏览器底层都是基于webkit的,然后各自系统中均带有webview控件,也是基于webkit引擎,所以不管通过APP调用webview展示html页面还是通过在浏览器打开html页面,效果是一样的。

相关文章

  • webview基础了解

    author=“jolting” date=“2018-07-27” 今天开发人员进行知识分享,分享主题是:安卓原...

  • iOS中WKWebView和Native交互

    前言 了解本文之前需要准备JS和WebView的一些基础知识,需要知道JS的基本语法和WebView调用JS的常用...

  • WebView详解

    一. WebView的基础用法 创建WebView: WebView的代理方法: 二. 获取WebView内容高度...

  • 01 项目架构-Webview独立进程架构

    1 WebView基础 见WebView详解 2 为什么WebView要使用跨进程 3 独立进程WebView实现...

  • WebView的一些设置

    1:权限 2:基础设置 mWebView=(WebView)findViewById(R.id.webview);...

  • WebView中Js与Android的交互

    WebView的一些基础设置 点击这里-->基础设置 WebView的安全问题 除非 min API level ...

  • WebView了解

    1:简介 WebView是一个基于WebKit,展现web页面的控件。 2:作用 1:显示和渲染Web页面2:直接...

  • react-native-webview postMessage

    react-native-webview 是 react-native 基础组件 Webview 的副本, 在 r...

  • WebView与JS的交互

    上一篇介绍了WebView的基础用法,可以移步下面的链接 WebView的基础用法 下面进入今天的正题 WebVi...

  • WebView基础

    之前webView的使用很大多局限于显示网页,现在有机会重头梳理下整理成如下笔记: 基本用法 WebView 的状...

网友评论

    本文标题:webview基础了解

    本文链接:https://www.haomeiwen.com/subject/sqsbmftx.html