在 chrome 浏览器中制作一个 NPAPI 插件(为 firefox 制作)运行

Make a NPAPI plugin(made for firefox) run into chrome browser

我有一个 NPAPI 插件,运行在 Firefox 中运行良好。现在我想将它移植到 chrome 浏览器,这意味着我希望它也能在 chrome 中工作。 但是我在浏览互联网和许多链接后了解到 chrome 不再支持 NPAPI 而现在它支持 pepper API 并且现在有了本机客户端的概念。

到目前为止我的理解是,如果我用 Pepper API 代码替换 NPAPI 代码(为 firefox 插件制作)并在编译时,一个 pexe 文件(本机客户端模块)连同清单文件(指的是 pexe 文件的位置)将生成,这些文件将保存在服务器上。 当一个 html 页面具有描述特定 MIME 类型的嵌入标签时,比如 "application/x-pnacl" 被加载,然后通过嵌入标签的 src 属性(指的是清单文件),获取清单文件,然后获取实际的pexe 文件,然后 运行 by/within 本机客户端插件(已存在于 chrome)。

不知道这个理解对不对。我假设就像 firefox 插件一样,pexe 文件将存储并安装在本地用户 PC 上,然后 detected/loaded 通过 chrome 作为插件。请告诉我这是否正确。

另外,我想问一下chrome中是否还有运行NPAPI插件的方法。如果是,请告诉我,否则我不应该考虑它。

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

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

此 link 描述了如何分发您的插件: https://developer.chrome.com/native-client/devguide/distributing