FireBreath开发跨浏览器插件

来源:互联网 发布:淘宝外卖会员卡好用吗 编辑:程序博客网 时间:2024/04/30 20:44

 

发现当初放这个记录已经过去好久了,后来真的通过firebreath开发跨浏览器插件后,发现也没啥好写的,直接根据他官方的指引一步步操作就OK了。

http://www.firebreath.org/display/documentation/Creating+a+New+Plugin+Project


通过这个指引,相信所有的技术人员都能非常轻松的创建好控件,并且在编译后,firebreath会算成自动的测试页面,非常直观。


我们接下来需要做的就是在其生成的控件代码的基础之上,添加我们有用的方法、属性、事件响应以及相关的业务代码;去掉[也可不去]其默认的测试方法等。


firebreath真的非常方便,在其提供的步骤中,甚至在编译后会自动生成安装包,贴心啊。 


当然,如果有更多的需求,或者碰到问题需要咨询,也可以查阅官方的其他页面,我暂时还没用上。


以下再谈几点个人体会吧:

1. 生成的控件同时提供了com注册的入口,以及NPAPI的接口,能同时在IE及非IE系列浏览器下运行;在生成控件后,注册只需要regsvr32即可,Firebreath将注册apapi插件的操作也封装到了这里面,非常方便 

2. 由于使用了boost库,最终生成的控件在还没有增加其他任何业务代码的情况下,最小体积也达到了900KB左右,这个有点偏大 

3. 注册控件时只会注册到当前用户下,其他用户使用不了;如果有这种需求需要自己额外做处理 

4. 由于默认使用的安装包是msi的,可以考虑采用nsis、innosetup等另外再打包,可以实现安装包的更大程度的定制 

5. Firebreath在非IE浏览器下,采用的是NPAPI的插件方式;而Google已经宣布将逐步取消对此技术的支持,未来Firebreath应该也会做出相应的调整吧,持续关注...


补充一个个人认为很不友好的地方:

FireBreath通过python来生成项目配置,再进一步通过CMake来项目相应的解决方案及项目,但这里生成的文件引用的路径,全是绝对路径,这就太不方便了;本以为有什么办法可以调整,但FireBreath官网都说了,就不折腾了。 

如果想把生成的项目换路径,则需要重新执行一次prep200x.cmd来重新生成一次项目了。 另外,如果要修改控件的GUID或者标识等,也只能修改项目文件目录下的xxxx.cmake,再重新通过prep200x.cmd来重新生成一次项目。 

原创粉丝点击