app中的webview是什么?
当你上网阅读东西时,我们一般会选择一款浏览器,比如Chrome、火狐、safari、IE或者Edge。你可能不知道这些浏览器之间有一些竞争,而竞争的主要形式就是WebView。
WebView的定义什么是WebView呢?它是本地应用程序内嵌的一个浏览器!这句话有两处需要搞清楚!
本地应用程序一般会采用诸如C++、Java、OC等语言配合它们各自的UI框架去开发,一般情况下,是不能跨平台的,比如ios和android就需要同时开发两个版本,pc和手机本地应用程序也是不兼容的。
浏览器的特点,其实它大概可以分为两部分
上面是火狐的一个页面,红色区域可以认为是WebView,它拥有渲染引擎,可以通过http/https请求加载内容,加载回来的代码就可以被执行和渲染出来。红色区域以上的部分就是浏览器本地的UI组件。
移动端app中WebView的特点我们经常把h5页面内嵌入app中,这种就是混合型的app,除了渲染页面本身的功能外,页面中的js还有能力调用app系统接口的,比如某些弹窗、分享等,这些区别对用户来说都是无感知的。
在普通浏览器中是没有这个能力的,至少浏览器没有开放这些api。
混合型的app一部分是native UI,一部分是H5页面,我们如何判断是前者还是后者?在安卓中可以通过开启”设置“->”开发者选项“->”显示布局边界“,所有NA部分都会被红色的框选出来。(苹果手机没有这个开关)WebView中的渲染引擎ios中,渲染引擎是webkit,和safari、chrome相同
Android中,渲染引擎是Blink
在Window、Linux和macOS中,渲染引擎的选择就比较灵活了,比较知名的有chrome的Blink、IE的Trident,它主要依赖于app和WebView的实现
WebView带来的好处因为它是从服务端加载页面资源,所以更新就比较方便,如果采用native UI那就要经历繁琐的审核过程。
夸平台,不用各个平台都开发一套代码
总结可以认为WebView就是浏览器,只是在不同平台长相和能力有所不同!
喜欢我的回答就关注我吧,有问题可以发表评论,我们一起学习,共同成长!
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有