Search code examples
google-chrome-appnpapi

Chrome Packaged App + Zigfu plugin


We've been working on a Chrome Packaged App that we distribute manually to some internal machines (not using the chrome store) to display some content on some kiosks around the enterprise.

We've recently had a new feature request that requires the use of the Zigfu plugin (NPAPI, Kinect) to track user engagement in those kiosks. However when we add the plugin to the manifest:

"plugins":[{"path":"npZigJSv1.0.1.dll",public:"true"}]

We get the following error:

There were warnings when trying to install this extension:
'plugins' is only allowed for extensions, hosted apps, and legacy packaged apps, but this is a packaged app.

So my questions are:

  • Is there a way around this limitation since we control the machines in question?
  • What is the definition of 'legacy packaged app' does it preclude the use of the chrome.* space? (we are using localstorage)

Solution

  • Replying to @mmocny's answer:

    NPAPI is also being phased out for extensions.

    And considering that NPAPI-using extenions will be rejected in the Webstore AND deployment options for Windows outside Webstore were severely shrunk, it's a bad idea. You may be able to make it work, but it will be temporary and painful.

    The correct way to do it now is using Native Hosts. Basically, you have a specifically crafted native executable wrapping Zigfu functionality you need that talks to your app via Native Messaging.

    Deployment downside is that you have to install the native component separately, but in your case that's a plus (restricts access) and not a problem (you control the machines).