- 博客(16)
- 资源 (7)
- 收藏
- 关注
原创 Android4.0.1 Activity的DecorView与SurfaceFlinger的Surface之间关系的建立过程分析
通过Android4.0.1 Activity的Window与DecorView关系建立过程分析,我们知道DecorView与ViewRootImpl之间是一一对应的关系。ViewRootImpl的成员变量mView保存DecorView的实例。DecorView是整个Activity的View Tree的根视图,整个Activity的显示就是从DecorView开始将整颗ViewTree
2013-02-27 19:20:20 2413
原创 android4.0.1 Activity的Window,DecorView 之间关系的建立过程分析
这篇主要关注Activity的窗口对象(Window)和根视图对象(DecorView)之间的关系以及二者的建立过程。ActivityManagerService负责管理每个Activity整个生命周期的所有活动。ActivityThread类是运行Activity的线程,实现开发者直接调用的Activity的功能。我们从ActivityThread启动应用程序的Activity开始,分析
2013-02-26 15:25:43 1397 1
原创 gdb 调试命令
以下命令在开发板上执行:/system/bin # ./gdbserver --attach 192.168.1.101:8888(PC机 ip) 1204(要调试的开发板上运行的apk进程)以下三个命令在PC机上执行:./prebuilt/linux-x86/toolchain/mips-4.4.6/bin/mips-linux-gnu-gdb ./out/target/p
2013-02-21 13:33:55 915
原创 android 4.0.1 webkit 基于JSC的JS 扩展
一. 扩展单对象要在页面上使用我们自定义的SingleObject对象。需要作如下修改:webkit/Source/WebCore/Android.mkSingleObject.hSingleObject.cpp以上两个文件是SingleObject在webkit中的具体实现,修改webkit的Android.mk把实现文件编译进webkit.webkit/Source
2013-02-21 13:12:07 1842
原创 android 4.0.1 webkit 添加自定义事件接口发送自定义Event
webkit增加自定义事件接口onirkeypress,onsystemevent,使页面可以注册实现这两个接口,需要在webkit中做如下改动:1.DomWindow.idl添加: attribute EventListener onirkeypress; attribute EventListener onsystemevent;2.HTMLAttributenames
2013-02-17 21:37:39 2548 1
原创 android 4.0.1 webkit Event 事件处理过程分析
键值经由android的GUI事件机制传给了webview.javawebview.java的onKeyDown()中会对感兴趣的键值作处理,这些键值可能不会再被传给webkit。webview.java的onKeyDown中通过调用mWebViewCore.sendMessage()将需要webkit处理的键值通过webviewcore.java传给webkit.webviewcor
2013-02-17 21:21:14 2148
原创 android4.0.1 webkit video 标签播放过程分析
HTMLDocumentParser.cpp 解析HTML源文件遇到video标签时,会调用自动生成的HTMLElementFactory中的方法createHTMLElement()这个方法根据tag name 在ConstructorFunctionMap中找到videoConstructor。并调用HTMLElementFactory::videoContructor.vid
2013-02-12 16:12:10 2622 1
原创 android4.0.1 webkit 硬件渲染过程分析
硬件渲染也可以分为三个部分,其中前两个部分与软件渲染相同。我们来看apk中开启硬件加速后,硬件渲染的第三部分:将保存有webkit绘制命令的SKPicture集合显示到framebuffer上是怎样具体实现的。下面的图是webkit 硬件渲染过程涉及的主要类的类图。类图下载地址下图是硬件渲染过程中paint的详细顺序图。顺序图下载地址也是从w
2013-02-12 16:02:46 4184 3
翻译 android4.0.1 webkit 硬件渲染用到的GL架构
来自GLWebViewState.h中的一段注释,这段注释详细说明了webkit 硬件渲染的架构。GL 架构在绘制时,WebView也用到了一棵Layer 树,这棵树的根节点是BaseLayerAndroid,在它之上可能有许多LayerAndroid.LayerAndroid的内容是SKPicture,BaseLayer的内容是PictureSet.在绘制的时候,我们有一个大
2013-02-12 14:48:21 2033
翻译 chrome 硬件渲染
原文链接http://www.chromium.org/developers/design-documents/gpu-accelerated-compositing-in-chromechrome 中集成了webkit,这篇文章对webkit 硬件渲染过程有详细的介绍,很好。简介这篇文档讲解chrome硬件加速合成的实现细节和背景。介绍通常来讲,网页浏览器完全依赖
2013-02-12 14:43:10 4353
原创 android4.0.1 webkit 软件渲染过程分析
android4.0.1 webkit 软件渲染过程可分为三部分。一. webkit 将绘制网页的命令存储在SKPicture中这个过程的详细顺序图如下:顺序图下载地址
2013-02-12 14:25:58 3683 2
原创 android 4.0.1 webkit layout 过程分析
当RenderObject被创建并加入到RenderTree后,他们还没有获得自身的大小和位置信息。各个具体的RenderBoxModelObject子类确定起自身的位置和大小的过程成为Layout.layout过程执行完后,RenderTree上每个节点的位置信息和自身大小就确定下来了。比如RenderBox的表示位置信息和自身大小的成员变量: IntRect m_frameRe
2013-02-12 14:04:54 1646
原创 android4.0.1 webkit render tree创建过程分析
页面渲染用到的主要数据结构是Render Tree,RenderTree与DOM Tree类似,但节点之间并不是一一对应的关系。RenderTree中所有Node的基类是RenderObject。RenderObject中定义了遍历RenderTree需要用到的方法。RenderTree的创建是在创建DOMTree的过程中同时创建的。具体是从HTMLConstructionSite的att
2013-02-12 13:58:11 1628
原创 android4.0.1 webkit dom tree 创建过程分析
一. DOM(Document Object Model)文档对象模型是独立于平台和语言的一套编程接口,允许程序和脚本动态的访问和更新文档的内容,结构和样式。文档可以被进一步的处理,处理的结果可以与当前页面交互。W3C 发布 DOM 规范,所有的浏览器都执行了这个标准。DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象
2013-02-12 13:45:05 1328
原创 android4.0.1 webkit 子资源下载过程分析
网页上的子资源包括,image, script, cssstylesheet, font, XSLstylesheet等。这些子资源是以document的元素或元素属性形式出现的,所以它们的加载是在主资源加载完成并创建了相应的element后,由element或其辅助类负责加载的。下面的类图是webkit加载子资源用到的主要类类图。类图下载地址CachedResourc
2013-02-12 13:16:50 1299
原创 android4.0.1 webkit 主资源下载过程分析
主资源的加载过程比较直观。下图是加载主资源涉及到的主要类的类图。类图下载地址以下说明各个类在主资源下载中的作用。主资源下载是由webview控件的loadUrl()触发的,图中列出了Android framework层与WebKit对接的主要模块。WebView控件是应用开发者直接使用的显示网页的控件。WebViewClient和WebChromeClient是
2013-02-12 11:52:38 1420
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人