<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[armite的专栏]]></title><description><![CDATA[webkit和android交流armite@126.com]]></description><link>https://blog.youkuaiyun.com/wzm012</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wzm012]]></copyright><item><title><![CDATA[PPT文档三]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83506967</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83506967</guid><author>wzm012</author><pubDate>Mon, 29 Oct 2018 17:49:41 +0800</pubDate><description><![CDATA[PPT文档要有一个流程，首先把项目的目标想清楚后，再想项目的内容和结构，最后想清楚实现方法。

清晰地表达了目标之后，就是项目的内容和结构了，这两天大致地写了写，发现项目的内容比较多，而且结构比较复杂，只是用简单的文字来表达，就已经有二十多页了，这还没有把结构说清楚，关键是还没有设计好想清楚，那怎么办呢？

这里想到了两个方法：一个是“顿悟”，一个是“渐悟”

“顿悟”是指一直在潜意识中思考这个项...]]></description><category></category></item><item><title><![CDATA[PPT文档二]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83378823</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83378823</guid><author>wzm012</author><pubDate>Thu, 25 Oct 2018 15:29:05 +0800</pubDate><description><![CDATA[在一句话说清楚项目要做什么后，接下来就是要分析项目的组成模块及其结构了，首先大模块有两个，一个开发环境，一个运行环境，模块之间通过页面进行连接，其次是递归地进行这个过程，先从三层递归开始：

第一层：如何能快速开发呢？一个所见即所得的界面，一个能不断增加，并且能复用的组件库等。如何丰富功能呢，尤其是扩展本地功能，即浏览器没有提供的能力，如播放器等。如何提高性能呢，移植优化blink。

第二层：组...]]></description><category></category></item><item><title><![CDATA[要写一个PPT文档一]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83310876</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83310876</guid><author>wzm012</author><pubDate>Thu, 25 Oct 2018 12:02:57 +0800</pubDate><description><![CDATA[最近有个项目要主导，好久没有做些事情了，人都变懒了，本来想写一个PPT文档，让领导知道项目能做什么，让兄弟们知道项目都需要做什么，如何做比较好，但是憋了好长时间都没什么思路，今天领导催文档了，想要在这周看看初稿，那么就要在这周把文档写完，一天又过去了，依然没有思路，这怎么办呢？

说说这个项目吧，首先一句话总结，打造一个快速开发页面的平台，及其功能丰富和性能高效的运行时。

其次是分解为相互配合的...]]></description><category></category></item><item><title><![CDATA[chromium源码的下载和编译三]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83182967</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83182967</guid><author>wzm012</author><pubDate>Fri, 19 Oct 2018 18:20:27 +0800</pubDate><description><![CDATA[chromium生成编译工程文件需要用到gn，但是gn又在chromium的依赖库中需要gclient来下载，这是需要翻墙的，于是在github上搜索了一下gn，真的找到了一些源码镜像，但是发现其编译过程还是需要gn，这变成了蛋鸡问题了，于是在网上找了一个最新的gn可执行文件，运行gn args out/debug，发现生成过程还是需要用gclient同步一些依赖库，这又变成了蛋鸡问题。

在看c...]]></description><category></category></item><item><title><![CDATA[Chromium源码下载与编译二]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83144532</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83144532</guid><author>wzm012</author><pubDate>Thu, 18 Oct 2018 18:18:25 +0800</pubDate><description><![CDATA[chromium是一个开源项目，同时也依赖于其他很多的开源库，因此google写了一个管理多项目的工具gclient，gclient是一个python程序，会根据目录下的DEPS文件下载依赖库到相应的目录中，分析DEPS文件，会发现依赖库都是从googlesource上下载的，这需要翻墙才能做到，但是同时也发现下载的库很多，有些可能是用于调试或测试的，而且有些功能不用，可以不下载相应的依赖库，那么...]]></description><category></category></item><item><title><![CDATA[chromium源码下载与编译一]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/83114232</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/83114232</guid><author>wzm012</author><pubDate>Wed, 17 Oct 2018 18:20:12 +0800</pubDate><description><![CDATA[最近要做一个Android上的Hybrid项目，本来一直用WebKit，但是WebKit是在2012年移植到Android上的，已经不能支持最新的Web技术了，而且Android上的Chromium发展迅速，已经能够满足各种需求了。

实际上现在才开始跟进Chromium，已经是很晚了，究其原因，可能有以下三方面原因吧：

技术惯性，一直在WebCore上开发，也积累了一些经验，这导致对WebKi...]]></description><category></category></item><item><title><![CDATA[176532版本webkit中RenderObject类结构]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/41479245</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/41479245</guid><author>wzm012</author><pubDate>Tue, 25 Nov 2014 15:12:16 +0800</pubDate><description><![CDATA[好久没看WebCore/render]]></description><category></category></item><item><title><![CDATA[在android上使用cairo]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/9030169</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/9030169</guid><author>wzm012</author><pubDate>Wed, 05 Jun 2013 14:39:17 +0800</pubDate><description><![CDATA[cairo是一个2D库，在浏览器领域主要是mozilla firfox在用。
webkit实际上也有用到cairo，主要是efl，gtk等，但是在android上，webkit用的是skia。
因此在android要想用cairo就需要自己编译移植了。


android上有Bitmap，这个直接对应于cairo的image surface就可以用，
这个移植比较简单，主要是Bitma]]></description><category></category></item><item><title><![CDATA[最近的对wenkit进行的优化修改]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/9028317</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/9028317</guid><author>wzm012</author><pubDate>Wed, 05 Jun 2013 12:00:36 +0800</pubDate><description><![CDATA[1.系统类
1.1 JSDOMWindowCustom.cpp  增加对plugin的直接js访问，统一plugin接口
1.2 HTMLTextFormControlElement.cpp  设置输入框不能选择
1.3 MainResourceLoader.cpp  去掉数据发送和接收监听
1.4 EventHandler.cpp  去掉模拟的鼠标事件
1.5 SocketStream]]></description><category></category></item><item><title><![CDATA[总结一下对webcore的修改]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/8226823</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/8226823</guid><author>wzm012</author><pubDate>Mon, 26 Nov 2012 18:28:22 +0800</pubDate><description><![CDATA[1.增加提示打印类
1.1Error.cpp，js执行错误打印
1.2HTMLTokenizer.cpp，html解析错误打印
1.3MainResourceLoader.cpp，主页打开失败提示
1.4FontCacheFreeType.cpp，增加font加载失败打印
2.系统修改类
2.1CurrentTime.cpp，Timer时间获取用clock时间BackForwardLi]]></description><category></category></item><item><title><![CDATA[关于tv app的一些想法]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/7549383</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/7549383</guid><author>wzm012</author><pubDate>Wed, 09 May 2012 14:18:06 +0800</pubDate><description><![CDATA[工作了6-7年了，一直是在机顶盒领域，一直和视频的检索和播放打交道，一直在做技术。
以前是做iptv机顶盒的，现在是做互联网电视机顶盒的，在技术上的区别是不大的。
通过这些年与电信，广电打交道，现在对产品有了一些小想法。
无论是iptv还是cntv，都是在电视上看视频，直播的或是点播的。
那么在显示上都是以web为主，用web来显示epg内容，用osd来显示状态。
但是随着android]]></description><category></category></item><item><title><![CDATA[做技术的伤痛]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/7458936</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/7458936</guid><author>wzm012</author><pubDate>Fri, 13 Apr 2012 22:04:10 +0800</pubDate><description><![CDATA[最近在青岛出差，做一个android4.0的项目，就是把ndk编译的webkit产品化到一个嵌入式终端上。
这个项目是以webkit为核心的web式项目，也就是以webkit为舞台，在其上开发特定的web应用。
但是webkit有个硬伤就是没有播放器，而播放器对嵌入式来说是相对比较复杂的，因为每个平台的播放芯片都是私有的，
因此在webkit中用plugin的方式，把底层播放器的功能提供给j]]></description><category></category></item><item><title><![CDATA[android ndk编译自己的webkit]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/7073613</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/7073613</guid><author>wzm012</author><pubDate>Thu, 15 Dec 2011 14:30:24 +0800</pubDate><description><![CDATA[android本来自带了webkit浏览器，但是要对其进行custom就需要android源代码才行，
但是在没有源码的情况下，那么就需要用到ndk了，比如，我是在xoom上做custom webkit的。
虽然ndk提供的库很少，而且没有skia，但是好在有bitmap，这样显示慢了点，没有硬加速，但不是不可能。
webkit需要的第三方库，freetype，png，jpeg，sqlite]]></description><category></category></item><item><title><![CDATA[移植webkit到c2的mips平台]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6691550</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6691550</guid><author>wzm012</author><pubDate>Tue, 16 Aug 2011 15:38:59 +0800</pubDate><description><![CDATA[最近在移植webkit到c2平台，
移植是基于最新的webkit代码，应该是5月份的，好像svn是8****吧。


移植中也遇到了不少的问题，现在记录一下，时间长，记不了太全了
1.多线程问题，webkit初始化线程和事件处理线程都需要是主线程，这个限制了webkit]]></description><category></category></item><item><title><![CDATA[好长时间没有写博客了]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6691401</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6691401</guid><author>wzm012</author><pubDate>Tue, 16 Aug 2011 13:22:30 +0800</pubDate><description><![CDATA[最近换了个工作，一切都比较忙
现在好多了，以后争取每周写一到二篇
呵呵。。。]]></description><category></category></item><item><title><![CDATA[webkit中添加widget显示]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6400395</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6400395</guid><author>wzm012</author><pubDate>Fri, 06 May 2011 17:12:00 +0800</pubDate><description><![CDATA[<br />widget其实就是一个网页，这样可以理解为在当前webkit多显示一个网页。<br />因此最低层次也要在page中多实例一个frame，在往上就是多实例page了。<br /> <br />可以选择在page中多实例frame，<br />实际上在page中有个mainFrame，这个是当前网页的主窗口，<br />因此建一个需要和它平级的frame来显示widget，<br />这样frame和mainFrame只是共享一个page而已。<br /> <br />比较难处理的有两个方面，一]]></description><category></category></item><item><title><![CDATA[webkit中JavaScriptCore目录的内容]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6387854</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6387854</guid><author>wzm012</author><pubDate>Tue, 03 May 2011 18:15:00 +0800</pubDate><description><![CDATA[<br />1.assembler是jit编译中间码用到的汇编程序<br />2.bytecode中间码相关的类和定义<br />3.生成中间码的类实现，实际上是编译Node类<br />4.interpreter用来执行js的类，实际上就是执行CodeBlock<br />5.jit执行jit汇编程序的类<br />6.parser解析js用到的词法分析类，语法分析bison文件和Node类结构<br />7.runtime是js的执行环境中自带的类<br />8.wtf是WebCor和JavaScrip]]></description><category></category></item><item><title><![CDATA[去年的webkit的js解析与执行]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6387785</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6387785</guid><author>wzm012</author><pubDate>Tue, 03 May 2011 17:52:00 +0800</pubDate><description><![CDATA[<br />现在用的是去年的webkit，一年来SquirrelFish也改动了很多，但是大体上还没有变。<br /> <br />js分为编译和执行两个主要过程，连接这两个过程的是CodeBlock结构。<br />执行分为两种情况，一个是虚拟执行CodeBlock的中间码，一个是jit把CodeBlock的中间码翻译成汇编再执行<br /> <br />编译也分为js解析和中间码生成两个过程，连接这两个过程的是Node结构。<br />解析也分为词法分析和语法分析两个过程，其中Lexer比较简单，Gra]]></description><category></category></item><item><title><![CDATA[webkit中图片的解码过程]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6307514</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6307514</guid><author>wzm012</author><pubDate>Thu, 07 Apr 2011 17:18:00 +0800</pubDate><description><![CDATA[<br />从loader下载图片后，在ResouceLoader中会创建一个SharedBuffer保存图片员数据，<br />然后把SharedBuffer传给CachedImage，其多重继承于CachedResource和ImageObserver，<br />然后CachedImage传给成员BitMapImage，其继承于Image，用于在GraphicsContext中显示，<br />Image中也会引用SharedBuffer，并且也引用CachedImage，<br />然后BitMap]]></description><category></category></item><item><title><![CDATA[扩展javascriptCore的功能]]></title><link>https://blog.youkuaiyun.com/wzm012/article/details/6291574</link><guid>https://blog.youkuaiyun.com/wzm012/article/details/6291574</guid><author>wzm012</author><pubDate>Thu, 31 Mar 2011 14:17:00 +0800</pubDate><description><![CDATA[<br />javascriptCore是webkit原生的js解析器，2008年被重写改名为SquirrelFish，可以参考<br />http://www.webkit.org/blog/189/announcing-squirrelfish/<br /> <br />其实现的是ECMAScript edition 3，可以参考<br />http://en.wikipedia.org/wiki/ECMAScript<br /> <br />要做的扩展是：<br />1。在js解析失败时，打印出url]]></description><category></category></item></channel></rss>