webview是什么?它有什么用途?不少用户对webview并不了解,其实webview是一种网页渲染工具,能像浏览器那样把Web页面呈现给用户。在Android应用开发里,WebView是常用的组件,用来在应用内展示网页内容。
通过网络获取网页资源(如HTML、CSS和JavaScript等),随后调用webkit渲染引擎,依照上图呈现的渲染流程来对页面进行渲染。

在Android的渲染流程里,当UI线程执行绘制操作时,若遇到Web相关内容,就会调用webkit thread线程去遍历Web的doc文档,并生成对应的display list,之后再将这个display list交付给UI线程的display list,由其完成渲染过程。
应用场景
通常,WebView常见于Android、iOS原生开发或原生与Web结合的混合式开发场景中,它的用途包括渲染第三方网页,以及内嵌文档、隐私条款这类网页内容。之所以采用这种方式,一方面是因为Web开发这类内容相对简单便捷,另一方面则是由于这些内容可能需要频繁更新,而Android和iOS原生开发若要更新内容,往往需要打包发布并经过审核流程,整个过程较为耗时。
部分应用因依赖WebView来展示网页内容,可能会出现加载失败、页面空白或相关功能无法正常显示等问题,导致无法正常运行。
某些应用内的在线帮助、文档浏览功能无法使用,影响用户获取相关信息。
部分应用的更新机制或许会受到影响,要是更新过程需要依靠WebView加载的页面,就有可能没办法顺利完成更新。
一些集成了网页服务的应用,可能无法正常展示相关的网页内容,导致功能缺失或不完整。
对于部分采用混合开发模式的应用(也就是同时运用原生代码与网页技术进行开发的应用),有可能会遇到界面显示不正常或者部分功能无法正常使用的状况。
观察应用的运行状态:要是部分依靠 WebView 来展示网页内容的应用,出现网页加载失败、页面空白或者弹出错误提示之类的异常现象,那就有可能是 WebView 组件缺失导致的。
查看系统设置:不同手机系统的查看方法可能存在差异。通常情况下,您可在“设置”-“应用”或“应用管理”里搜索或查找和WebView相关的选项,要是没找到相关设置,或许是该组件缺失了。
小米手机搜索示例

华为手机(HarmonyOS)搜索示例

显示和渲染Web页面
直接使用html文件(网络上或本地assets中)作布局
可和JavaScript交互调用


热门合集更多>>>