4 ms·
Why would I use this instead of Native Client? edit: I really don't understand this either. How does this fit in with the Chrome style of extension? What is NPA
by drivebyacct 16y ago
Why would I use this instead of Native Client? edit: I really don't understand this either. How does this fit in with the Chrome style of extension? What is NPAPI? How does it relate to Native Client? ActiveX? Firefox Extensions?
Clearly I know very little about the current browser plugin ecosystem. Anyone care to enlighten me?
- andrewtj 16y agoNPAPI's lineage harkens back to Netscape 2.0 where it was used for extending the browser to support new content-types. Other browsers of that era implemented the API as well so it became a bit of pseudo-standard. It's been updated over the years in various ways, some bad, some good — allowing bidirectional interaction with JS and not requiring the plugin to render something to the page are probably the main improvements to note. NPAPI is useful in the context of Chrome extensions as it is the only method (currently) available for running native code in an extension. Firefox extensions are able to bundle NPAPI plugins in this manner as well however this is a less common approach as XPCOM components are generally a better fit for that environment. One notable difference between extensions in Firefox and in Chrome is that Chrome allows you to specify that a plugin is only executable by your extension; a handy thing as you may not want any arbitrary web page to run your plugin (XPCOM components are not by default accessible via any old webpage). Internet Explorer no longer supports NPAPI which is why ActiveX support is a useful target. Native Client as far as I understand is targeted more towards producing one-off executables rather than reusable components.
- est 16y agoyou need wikipedia
- taxilian 16y agoWorth reading up on: http://en.wikipedia.org/wiki/NPAPI http://en.wikipedia.org/wiki/NPAPI actual plugins aren't useful for all situations; in fact, I'd say that it's relatively uncommon to need to write a plugin. That is one of the main reasons I started FireBreath; relatively few people in the world know how to write a browser plugin for any platform, much less make one work on all major browsers. FireBreath aims to make that easier. That shouldn't preclude the fact that plugins simply aren't suited to many tasks; the need to install it is a big factor in that, particularly since most common install methods only work on one browser. Also, there are existing plugins such as flash and silverlight that already have a large install base and can often be used to solve many of the problems that people use plugins to solve; worth considering.