Chromium源码浅析--- Content API (一)

本文探讨了Chromium的Content模块的开发原因,它旨在提供轻量级接口用于构建浏览器应用,避免不必要的功能和体积膨胀。Content API使得开发者能够创建支持多进程架构、GPU加速等功能的浏览器,如Content Shell、Android WebView和CEF3。通过使用Content API,开发者可以专注于核心功能,同时享受Chromium的先进技术。
摘要由CSDN通过智能技术生成

[本文属原创,如有转载,请注明出处http://blog.csdn.net/yl02520/article/]

为什么要开发Content 模块?

正如我们所知,Chromium是一个非常复杂的开源项目,其复杂程度类似于一个操作系统。

Google的Chrome浏览器就是基于Chromium开源项目开发而来。现在假设有个公司或组织计划基于Chromium开发一款自己的浏览器或类似浏览器的应用程序,该怎么进行呢?考虑直接基于Chrome模块来开发会带来什么问题呢?由于Chrome浏览器除了一般浏览器渲染网页的基本功能外,还添加了许多重量级的功能,比如Extension, Packaged APP(类似于采用JavaScript语言写Native程序), NativeClient(让用C/C++编写的原生程序能直接在Chrome浏览器中运行)等。这些模块是Google的研究方向,一般的浏览器是不需要的。

如果不顾一切的把这些不必须的模块编译进来,会增加代码维护的负担,并且编译后的二进制可执行文件的大小也会倍增。如果是一般的桌面程序可能问题不大,但是对于Android平台这样的嵌入式应用是不可接受的。

所以把一些浏览器通用的模块提取出来,单独存放在一个目录下(即为Content模块),提供一些简单易用的接口给开发者,该接口即为Content API。开发者只需实现这些接口就能完成一个类似浏览器的程序开发,得到的浏览器也继承了Chromium的基本特性,例如安全的多进程架构,GPU硬件加速网页渲染,视频音频GPU加速解码,HTML5 API的良好支持等等。

这样做使代码分层更加清晰,代码放在正确的位置,不会导致错误的依赖。如果开发者需要Chrome模块提供的某个特性,可以考虑把该特性单独

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值