代码之家  ›  专栏  ›  技术社区  ›  Alon Gubkin

Google Chrome扩展和NPAPI

  •  15
  • Alon Gubkin  · 技术社区  · 14 年前

    我需要写一些谷歌浏览器扩展。问题是ChromeJavaScriptAPI没有给我足够的能力——我需要使用本机代码。我考虑过编写一个NPAPI插件来提供一些自定义jsapi的扩展。

    是否可以将扩展包以及.crx中的自定义NPAPI插件打包,然后将其上载到 Chrome Extensions Store ?

    此方法的另一个问题是NPAPI插件将有许多版本:Linux、Windows、OS X、x86、x86-64等。是否可以将所有这些打包到crx中并使用最佳版本?

    谢谢。

    编辑: 阅读后 this ,我意识到不可能在一个crx中优雅地解决多平台问题。但是-是否可以为每个平台上传不同的crx-s到Chrome扩展商店?

    1 回复  |  直到 14 年前
        1
  •  16
  •   chitti Mohamed Mansour    13 年前

    如果要在一个CRX中使用多平台,则应将它们按此顺序放入清单中:

    "plugins": [
       { "path": "plugin-windows.dll" },
       { "path": "plugin-linux.so" },
       { "path": "plugin-mac.plugin" }
    ]
    

    记住,上传你的NPAPI扩展到商店将只在谷歌Chrome扩展工作。在Google Chrome操作系统(使用googlechrome)的情况下,您将无法使用NPAPI。

    但是你应该看看PPAPI,它将是为扩展做插件开发的推荐方法:

    http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/

    同时,在扩展中使用NPAPI时,您需要遵循以下指南(这非常有用):

    http://code.google.com/chrome/extensions/npapi.html

    记住,你是不是 真正地 需要在您的分机中使用NPAPI吗?如果你能找到一个HTML5的解决方案,那就更好了。