2015-08-27 31 views
0

我有一个NPAPI插件,在Firefox中运行良好。现在我想将它移植到Chrome浏览器,意味着我希望它能够在Chrome中工作。 但我已经学会了在互联网上浏览和许多链接,铬不再支持NPAPI,而现在它支持辣椒API,现在有本地客户端的概念。制作一个NPAPI插件(用于Firefox)运行到Chrome浏览器

到目前为止,我开发了一个理解是,如果我用Pepper API代码替换NPAPI代码(用于firefox的插件),并且在编译时,pexe文件(本地客户端模块)以及清单文件(其中指的是pexe文件的位置)将被生成并保存在服务器上。 当一个带有嵌入标签的html页面描述了一个特定的MIME类型,比如说“application/x-pnacl”,然后通过嵌入标签的src属性(指向manifest文件),获取清单文件,然后获取实际的pexe文件,然后由本地客户端插件(已经存在于chrome中)运行。

我不确定这种理解是否正确。我假设,就像firefox插件一样,pexe文件将被存储并安装在本地用户PC上,然后通过chrome作为插件检测/加载。请告知这是否正确。

此外,我想问是否仍然有任何方式在Chrome中运行NPAPI插件。如果是请告诉别人,我不应该考虑它。

+0

我有氯化钠铬插件,它提供了加密解密API进行加密或解密我的Chrome扩展的要求,我正在开发一个Firefox插件它做同样的工作。但是这里的NaCl不支持firefox。我怎么可以嵌入Pexe文件在Firefox插件background.js –

回答

2

首先,Chrome浏览器不再支持NPAPI插件出于安全原因: https://support.google.com/chrome/answer/6213033?hl=en

插件必须使用Pepper插件API(PPAPI)和被编译为本地客户端(NaCl)的可执行文件,因此插件二进制文件可以被验证为安全地运行。便携式Native Client(PNaCl)插件可以被任何网页加载,而无需用户安装任何东西。但是,如果您的插件很大,您可能希望通过Chrome网上应用店将其作为Web应用程序分发。在这种情况下,您可以将.nexe或.pexe与您的应用程序捆绑在一起,以便将其有效安装在用户的计算机上。

此链接介绍如何分配你的插件: https://developer.chrome.com/native-client/devguide/distributing

+0

这个答案是正确的;也注意到NaCl和NPAPI之间存在显着差异;安全模型完全不同。您当然可以手动在Chrome浏览器上重新启用NPAPI,但只会在很短的时间内运行,因为Chrome会尽快完全移除支持。 这是否是一个好的解决方案取决于你的插件;使用Native Client(FireBreath 2.0所采用的路径)做一些事情可能会更好; NaCl具有更好的绘图功能,Native Client具有“浏览器外”安全模式。你用什么取决于你的需求 – taxilian

+0

@bbudge和taxilian,你好!感谢您的回答。我已经理解pexe文件可以作为插件存储并安装在用户本地机器上。但是,我怀疑当pexe作为插件安装时,会在chrome://插件路径中显示为单独的插件,就像显示Adobe Flash Player插件一样? – user2181750

相关问题