Android webkit,webview和chrome的关系
2016-01-07 19:34
621 查看
Android webkit
Webkit是一个开源的浏览器排版和渲染引擎,包含WebCore和JavascriptCore。WebKit有众多的实现(Qt、Gtk, windows, chromium, android, etc)。Android 4.0平台的Web引擎框架采用了WebKit中的WebCore,javascript引擎则是采用google的V8引擎。Android 4.0的webkit采用了和chromium 12.0.742.130中webkit相同的codebase,webkit版本为534.30。
由于Android系统本身是用Java编写的,那么,webkit与系统相关部分只能用Java编写,同时也可以提供一些Java API提供给应用开发者调用,而由于webkit底层的排版部分与系统关系不是很大,则使用C/C++编写。那么,Android webkit的结构就很清晰了,分为:Java层和C层。两者的通信通过Java Native Interface实现。
WebView
WebView是处于Java层的视图模块,通常在Android Native App中插入的html页面也是构建与WebView之上,包括了页面的浏览,请求的处理。这也就是为什么WebView的出镜率比Android Webkit本身还要高。很多Native App在开发的时候,部分更新率高的模块,都会选择使用WebView来渲染html页面,从而可以方便内容更新。在C层中也有一个WebView模块,C层中的WebView模块负责初始化并构造WebView对象,然后将其赋值给Java层的WebView。之后两者就可以进行通信了。
Chrome
关于Android chrome,更多就是一些小道消息了。chrome for Android是Chromium的派生。
Android自带浏览器虽然与Chrome有一些共享代码,但是两者有非常大的区别,两个开发团队进行了两种完全不同的开发。
未来Android浏览器和chrome for Android之间必然会统一。
相关文章推荐
- iOS_CoreData的使用
- iOS编程 -- webView的使用
- Android安全-对称加密和非对称加密
- [读书笔记]《APP研发录》之App图片缓存设计
- Android应用开发Scroller详解及源码浅析
- (五)认识Android中的Service
- Swift开发--多个UIViewController之间传值
- Android Studio常用快捷键
- UIWebView 加载数据的方式
- iOS 添加 framework 报缺少头文件
- MAC 把从appstore上下载的安装包拷贝出来
- Android apk动态加载机制的研究
- Unity 分数增长
- Android中的动态加载机制
- 一只入了IOS深坑的汪
- android强制弹出键盘
- iOS企业级开发
- php微信开发01
- ThreadPoolExecutor线程池
- RedHat 6.5(x86_64)启动nagios客户端nrpe报错的解决方法