我发现浏览器插件有很多框架。
我的第一个问题: 为插件指定了以下哪个框架,以及未为插件指定哪个框架: FireBreath,OpenForge,Kango,BabelExt,Nixysa项目,JUCE项目,QtBrowserPlugin项目。
我的第二个问题: 除了那些之外,还有其他流行的插件框架吗?
我的第三个问题: 这些流行的插件框架的主要区别是什么? 确实,这些框架有任何比较,比较可以是以下每个术语:
此外,我已阅读Cross-Browser Extensions API?,我认为这是关于扩展程序的框架(不是插件的框架)
答案 0 :(得分:1)
我说实话 - 这似乎是你应该能够通过一些谷歌搜索来回答的问题。我感谢您至少尝试应用如何更好地提出问题的建议,所以我会回答一些我知道的事情。
FireBreath是用于创建浏览器插件而非扩展的C ++框架。它可以作为支持NPAPI插件的浏览器的NPAPI插件(以前只有IE浏览器,但Chrome今年不再支持它们,Firefox计划在2016年底)或作为ActiveX控件,为浏览器提供相同的功能Internet Explorer中的插件。到目前为止,FireBreath 2正在运行但文档记录不佳,它将API从浏览器和插件之间的同步变为异步,并添加了一个模拟层,让他们可以使用Native Messaging与Google Chrome配合使用。据我所知,它是最完整和最新的插件框架。我是它的主要作者,所以请随时自行确认。
Nixysa是一个获取定义文件并输出NPAPI插件代码的工具。我还没有使用它,所以我无法准确地告诉你它的功能是什么。自2012年添加PPAPI支持以来,它尚未更新;但是,这不太可能有用,因为从那时起PPAPI发生了重大变化,而且因为唯一可以在没有特殊命令行标志的情况下运行的PPAPI插件是由Chrome团队特别祝福的。
JUCE是一个GPL库,提供商业许可证,对创建浏览器插件有一些支持。我不知道这些日子有多么强大;当我上次看到它时,它看起来写得很好,并采用比FireBreath更简约的方法; FireBreath为你提供了一个框架,并尝试让一切正常工作,而JUCE似乎(我可能是错的)更多的是提供构建基块,但不要试图让一切看起来都一样#&# 34;事物的类型。
QtBrowserPlugin是一个已解散的非维护项目,它曾一度允许使用QT创建浏览器插件(可能只是npapi,但不确定)。有迹象表明它可能不再起作用了。
我不知道其他项目是什么。如果我是你,我会尝试做一些研究。谷歌是你的朋友。