CEF全称Chromium Embedded Framework,是一个基于Google Chromium 的开源项目。Google Chromium项目主要是为Google Chrome应用开发的,而CEF的目标则是为第三方应用提供可嵌入浏览器支持。CEF3不仅开源,而且跨平台,框架的开发者也不断的在更新,英文资料较丰富,对HTML5,CSS3等支持也很好。目前CEF3被全球很多公司使用,国内使用该框架的公司也不少,比如腾讯、网易、37游戏、印象笔记等。可以算的上应用最广泛的基于Google Chromium 的开源项目之一。CEF3除了用作可嵌入浏览器应用,还可以用作web开发界面交互,甚至简单的浏览器。

经过粗暴简单的介绍,就开始粗暴简单的入门,首先提供下源码下载和开发者必看的一些资料。

https://code.google.com/p/chromiumembedded/  代码,下载需要FQ

https://bitbucket.org/chromiumembedded/cef   wiki,能看懂英文的,最好过一遍

http://cefbuilds.com              编译好的工程以及代码,下载需要FQ

http://magpcss.org/ceforum/apidocs/      CEF API 文档

http://magpcss.org/ceforum/apidocs3/     CEF3 API 文档

http://magpcss.org/ceforum    英文论坛(框架的开发者经常在这里回答用户问题,论坛质量很高,不需要FQ。顺便鄙视下adobe的flash player开发者论坛,渣得要命,根本没有官方人员答疑)

国内用户除了以上这些,还有一些值得参考的博客和github资料

https://github.com/fanfeilong/cefutil/tree/master/doc    作者把一些主要的英文资料翻译成中文,为CEF3在国内的使用做出了很大的贡献。英文上比较吃力的可以看看这个。

http://blog.csdn.net/column/details/yongsheng.html  朱永盛的博客专栏,学习CEF3最好了解下chromium内核,有助于对代码框架、进程等了解。

https://github.com/fanfeilong/cefutil/blob/master/doc/CEF%20General%20Usage-zh-cn.md  CEF3常用案例,初学者必看

另外很重要的一个入门资料,就是cef3里的注释和示例cefclient里的注释,虽然是英文的,但简单易懂,静下心来看能获得事半功倍的效果。这些在http://cefbuilds.com里下载。

最后提示一些坑。诚然,任何东西都不可能十全十美,使用CEF3框架可能会遇到一些坑。参看:http://www.hufuman.biz/?p=162 。这个博客是2013年6月写的,到现在两年多了,CEF3也经历了N多个版本的更新。里边提到的大部分坑都已经填好,另外一些则根本算不上坑,比如安装包太大、不支持第三方协议、默认不支持F5。剩下算是坑的估计就只有Javascript弹出框大小不能自动调整了,其实这个也可以自己去解决。另外我再加一个坑提示,如果需要打开多个flash资源较大的页面(如视频、游戏等),flash插件会比较容易崩溃。至于打开多少个会flash插件崩溃,开发者可以自己去试。会不会有其他的坑,可以肯定的说:有,需要开发者自己去发现去解决。

CEF3开发者系列之CEF3入门的更多相关文章

  1. CEF3开发者系列之工程和代码结构

    CEF支持一系列的编程语言和操作系统,并且能很容易地整合到新的或已有的工程中去.它的设计思想就是易用且兼顾性能. CEF3支持一系列的编程语言和操作系统,并且能很容易地整合到新的或已有的工程中去.它的 ...

  2. CEF3开发者系列之JS与C++交互之二

    本文翻译自JavaScriptIntegration (https://bitbucket.org/chromiumembedded/cef/wiki/JavaScriptIntegration).本 ...

  3. CEF3开发者系列之JS与C++交互之一

    JS与Native交互是相对于比较困难的技术,在学习这门技术之前,我们先了解下浏览器内核中的JS引擎与chromium内核的V8引擎相关知识.在浏览器应用中,JS与本地代码互相调用,得益于浏览器内核对 ...

  4. CEF3开发者系列之进程间消息传递

    在使用CEF3作为框架开发过程中,实现WebSockets.XMLHttpRequest.JS与本地客户端交互等功能时,需要在渲染(Render)进程和浏览(Browser)进程中传递消息.CEF3在 ...

  5. CEF3开发者系列之进程和线程

    CEF3是一个多进程架构框架,如果有了解过chromium的进程架构的,那么就很容易了解CEF3的多进程了.打开CEF3源代码中发布的cefclient实例,如果打开的页面带有flash或者其他插件. ...

  6. CEF3开发者系列之类和接口

    CEF3基本的框架包含C/C++程 序接口,通过本地库的接口来实现,而这个库则会隔离宿主程序和 Chromium&Webkit的操作细节.它在浏览器控件和宿主程序之间提供紧密的整合,它支持用户 ...

  7. CEF3开发者系列之Cookies管理和共享

    涉及网页登录相关的技术,Cookies肯定是忽略不了的.由于项目的需要,要做一个双核的产品.双核间切换会涉及到登录状态的问题,共享Cookies是一个很好的方案.既然涉及到共享cookies,那么读取 ...

  8. CEF3开发者系列之CefEnableHighDPISupport详解

    在CEF3中,CefEnableHighDPISupport()这个接口函数在使用时一般不为人所注意,但是如果稍有不慎,会造成打开的网页不能填满窗口的问题.如果是需要flash插件才能运行的游戏.则会 ...

  9. CEF3开发者系列之Cookies管理和共享<转>

    原帖地址:https://www.cnblogs.com/guolixiucai/p/6994559.html 涉及网页登录相关的技术,Cookies肯定是忽略不了的.由于项目的需要,要做一个双核的产 ...

随机推荐

  1. 软删除脏数据job笔记

    某次处理一个case,发现线上库里有很多数据有问题.于是决定写一个job来将有问题的数据软删除掉.涉及到的两条SQL语句如下: <select id="loadTSKTVBillDai ...

  2. Java学习之Hessian通信基础

    一.首先先说Hessian是什么?    Hessian:hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能,相比WebService,Hessian更简 ...

  3. 从零学习storm(一) 环境的安装配置

    1.首先 安装zookeeper   2.安装Java环境   3.安装Python   下载python包,编译安装     1.解压      2.configure     3.make     ...

  4. webpack 前端构建

    一.建立简单的项目目录 1.创建 manager 根目录(作为项目根目录)2.执行 npm init,在根目录manager下自动生成 package.json文件3.npm install webp ...

  5. document.all的详细解释(document.all基本上所有浏览器可用!)

    从何而来从IE4开始IE的object model才增加了document.all对象,MSDN中也对 Object.all 有详细的说明,Object.all是个HTMLCollection,不是数 ...

  6. 1455.Solitaire(bfs状态混摇)

    Solitaire Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  7. Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率

    (手机的颜色,大小,用户体验来加权统计总体的值)极大似然估计MLE 1.Logistic回归 Logistic regression (逻辑回归),是一种分类方法,用于二分类问题(即输出只有两种).如 ...

  8. PHP array_multisort() 函数详解 及 二维数组排序(模拟数据表记录按字段排序)

    一.先看最简单的情况. 有两个数组: $arr1 = array(1, 9, 5); $arr2 = array(6, 2, 4); array_multisort($arr1, $arr2); pr ...

  9. Lvs原理及部署之ARP协议

    1.什么使ARP协议 ARP协议,全称"Address Resolution Protocol" ,中文名是地址解析协议,使用ARP协议可实现通过IP地址获得对应的物理地址(MAC ...

  10. gcc 和g++区别

    gcc和g++都是GNU的一个编译器;这两者的区别:1.从源文件上看,对于文件后缀(扩展名)为.c的test.c文件,gcc会把它看成是C程序,而g++则会把它看成是C++程序;而对于文件后缀(扩展名 ...