Native Messaging

The NPAPI Successor

Part I

Lu Yuan

Jan 23, 2015

What's NPAPI

About NPAPI

Netscape Plugin Application Programming Interface

Browser Support:

  • NetScape Navigator and Communicator
  • Firefox
  • Safari
  • Chrome (Removed)
  • Opera
  • Internet Explorer up to 5.5SP2
  • ...

About ActiveX

ActiveX is a software framework created by Microsoft that adapts its earlier Component Object Model (COM) and Object Linking and Embedding (OLE) technologies for content downloaded from a network, particularly in the context of the World Wide Web.

A Sample Hello World NPAPI Plugin

I cannot find one!!!

Too complicated!!!

 

 

https://github.com/axgle/npapi-chrome-plugin-helloworld

Why Chrome Removes

NPAPI in Chrome/Chromium

In September 2013, Google announced that NPAPI support in Chrome would be phased out during 2014 because "NPAPI’s 90s-era architecture has become a leading cause of hangs, crashes, security incidents, and code complexity."

 

NPAPI support was removed from the Linux version of Chrome in version 35.

 

In September 2015 NPAPI support will be removed from all platforms.

Here Comes PPAPI

About PPAPI

 Pepper Plugin Application Programming Interface

 

A set of modifications to NPAPI to make plugins more portable and more secure, designed specifically to ease the implementation of out-of-process plugin execution.

About PPAPI

Browser Support:

  • Chrome / Chromium
  • Opera 24+ ...

Mozilla announced that it was "not interested in or working on Pepper at this time."

In February 2012, Adobe Systems announced that future GNU/Linux versions of Flash Player would only be provided via PPAPI, although the previous release, Flash Player 11.2, with NPAPI support, would receive security updates for five years.

More about
PPAPI and NativeClient

Introducing
Native Messaging

About Message Passing

About Message Passing

* In extension messaging

  1. Simple one-time requests
  2. Long-lived connections

* Cross-extension messaging

* Sending messages from web pages

* Native messaging (28+)

Communication between extensions and their content scripts works by using message passing. Either side can listen for messages sent from the other end, and respond on the same channel. 

26+

Native Messaging

About Native Passing

Thanks

The detail about Native Messaging will be shown in Part II.

See you!

Made with Slides.com