FireBreath框架:NPAPI浏览器插件开发

摘要:FireBreath is a framework that allows easy creation of powerful browser plugins. A plugin built on FireBreath works as an NPAPI plugin or as an ActiveX control (windows only) and support could be added for other plugin types built in C++ as well.

开源项目FireBreath,是一个支持NPAPI的插件开发框架,它的诞生大大缩短了插件开发周期。了解更多:http://www.firebreath.org/

在此框架基础上进行插件开发,可以不用考虑插件对各大浏览器的兼容性,只要浏览器商支持NPAPI就可以正确的运行你的插件。遗憾的是,Chrome从2014年开始已经开始向PPAPI转移,高版本的Chrome浏览器将无法使用FireBreath插件;另外,对国内而言,360浏览器使用的确实是Chrome内核,它应该也存在问题(未测试)。

但是,IE、火狐、QQ浏览器都能较好的支持NPAPI,FireBreath框架表现的非常完美。(注:2017年3月测试正常)。
[2017-5-1注:Chrome 42以上版本,火狐52以上版本不再支持NPAPI协议插件开发]

FireBreath作者——Richard Bateman,以及开源项目贡献者,他们都在朝着PPAPI努力,让FireBreath走的更远。


目录:

准备工具

FireBreath框架

需要从github上下载FireBreath框架:https://github.com/firebreath/FireBreath。下载release版本,一般下载最新版。

安装Python

FireBreath插件INFO文件是采用Python来配置的。由于Python3对Python2强制不兼容因素,这里推荐安装Python2最高版本(2.7):https://www.python.org/downloads/

安装时,如果有添加Path的,直接勾上。如果没有,请确保将bin路径添加到Path中,便于后面方便执行Python命令。

安装CMake

FireBreath文件是用CMake来组织的,至于为什么?作者原话:“对于那些质疑我使用CMake是一个大缺陷的人,请你们先弄明白为什么要使用CMake,以及你有更好的代替方式的时候,再来谈论此问题。”

也对,在整个插件开发过程中,我们并不需要了解CMake是什么,更不需要知道它是如何工作的。你需要做的仅仅是:安装它!https://cmake.org/download/。这里需要叨叨几句,CMake下载时,你最好:

  • A. 下载x86版本
    这里解释一下,可略过。FireBreath生成build文件时,需要使用类似于这样的命令:prep2013.cmd(prep2013x64.cmd为生成64位插件),一般为了兼容性,都使用prep2013.cmd,也就是x86这样就造成了CMake x64可能不能正常工作,实践证明确实是这样。

  • B. 下载.msi版本
    Msi版本相对于zip版本有一个好处,可以勾选Add Path,也就是添加\bin路径到系统环境。不用多解释了吧。

安装WiX Toolset

对于只是学习FireBreath玩玩的看官,不必安装WiX。因为WiX它的全称叫做Windows Install Xml。从VS2010开始,Microsoft Visual Studio(VS)已经开始推荐使用WiX制作.msi安装包,微软后续的IDE已经逐渐不支持“生成->发布”来制作msi。

WiX顾名思义,旨在以配置XML来生成安装包,其可定制性极高。这里推荐下载v3.6版本:http://wixtoolset.org/releases/,因为高版本WiX的\bin目录下缺失setupbld.exe,可能FireBreath是更改了生成策略,不需要该exe或者是有了其他替代品。无论如何,FireBreath框架中需要用到setupbld.exe。

WiX是静默安装的,一般安装在:C:\Program Files (x86)\WiX Toolset v3.6,而且会自动配置系统环境变量,具体见下表:

变量名 变量值
WIX C:\Program Files (x86)\WiX Toolset v3.6\

但,它并没有更改Path变量。

根据FireBreath官网上说法,需要将v3.6后的反斜杠“\”删掉。同时,为了后面方便使用candle.exe、light.exe,最好继续配置Path,添加 : %WIX%\bin
至此,万事俱备。(当然,认为你VS2010或者更高版本已经安装好了,笔者是VS2013)

开发前奏

python fbgen.py

(以管理员运行命令提示符)该命令用于配置插件信息,同时会在FireBreath-master根目录下生成文件夹:projects。见下图,具体描述,见下表:
这里写图片描述

这里写图片描述

prep2013.cmd

此命令将下载boost.tar.gz文件,同时在FireBreath-master根目录下生成build文件夹,并自动使用7-zip对boost.tar.gz文件解压归档。好了,至此基本完成框架配置。
点击FireBreath-master->build

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值