zoukankan      html  css  js  c++  java
  • webview综述


      

    nWebView 是webkit最核心的一个view,WebView管理WebFrameView和WebFrame之间的交互,一个WebView对象绑定一个window,并且要求MainFrame加载url,一个WebPage对应一个Window. 
      
    WebView
    n它对应的是根window。 
    n它负责处理外部所有消息,并转发给相关模块。 
    n它负责mainFrame和历史记录的管理工作。 
    n¨  
    WebFrame
      
    nFrame的管理者 
    n负责资源加载和反馈处理 
    ¨临时数据资源(provisional data source)和确认数据资源(Committed Data Sources) 
    ¨WebKit提交请求是异步响应的。在发送请求到收到数据的过程,Webkit会创建一个临时数据资源(provisional data source),这个资源并不知道是否能正确接收数据,所以是临时的。当这个临时数据资源变成有效时,WebFrame才会有真正的数据资源。开始WebFrame并没有数据资源(data source),只有一个空白页显示。 
    ¨WebFrame收到第一个字节数据,Data Source就变确认数据资源(Committed Data Sources) 
    ¨了。如果临时数据资源(provisional data source)有错误,就不会变成确认数据资源(Committed Data Sources)。 
    ¨当数据资源变成确认的(committed)状态,WebFrame将创建相应的document representation 和document view 。

    浏览器的分层结构 

    nWebKit上层组织应用 
    nWebCore 
    ¨Page与外框相关的内容(Frame,Page,History,Focus,Window) 
    ¨Loader加载资源及Cache 
    ¨HTML-DOM HTML内容及解析 
    ¨DOM- DOM CORE内容 
    ¨XML- XML内容及解析 
    ¨Render-排版功能 
    ¨CSS-DOM CSS内容 
    ¨Binding-DOM与JavascriptCore绑定的功能 
    ¨Editing-所有与编辑相关的功能 
    nJavascriptCore-javascript引擎 
    ¨API-基本javascript功能
    ¨Binding与其它功能绑定的功能,如:DOM,C,JNI 
    ¨DerviedSource自动产生的代码 
    ¨ForwordHeads头文件,无实际意义 
    ¨PCRE-Perl-Compatible Regular Expressions  (正则表达式函数库(Perl 兼容)
    ¨KJS-Javascript Kernel 
    ¨WTF-KDE的C++模板库 
    nUnicode-qt unicode 库 
    nGToolsMalloc-Google TCMalloc库 
    nCURL-url 客户端传输库 
    nPlatForm- 与平台相关的功能,如图形图像,字体,Unicode, IO,输入法等.
     

    现代浏览器体系结构
    n浏览器系统结构图分为四层 
    n第一层为业务应用层,用户可在webkit基础上构建各种应用。 
    n第二层为插件及第三方库。 
    n第三层为webkit平台Porting所需的接口层。 
    n最底层为平台和操作系统支持层,提供webkit平台所需的软硬件资源。
  • 相关阅读:
    请用正则实现String.trim()
    事件委托的原理是什么?有什么作用?
    请简述get请求和post请求的区别
    用原生js实现,点击一个列表时,输出对应的索引
    请用js写一个函数,实现获取浏览器url中查询字符串中的参数并返回一个数组
    请描述一下cookies、sessionStorage、localStorage、session四者的区别?
    清除浮动的几种方式,各自的优缺点?
    如何使用离线存储(localStorage)?
    使用css怎么让谷歌支持小于12px的文字比如10px
    ajax有哪些方法可以实现跨域?他们都有哪些局限性?
  • 原文地址:https://www.cnblogs.com/feng9exe/p/6676187.html
Copyright © 2011-2022 走看看