最近项目中须要我编写跨平台的浏览器控件供JavaScript调用,通过几天折腾,个人插件已经可以很好的工做在Windows、Linux、Mac平台上的主流浏览器上,和JavaScript也能够很好的进行交互通知,下面就介绍一下主要的NPAPI插件开发流程和一些须要特别注意的地方。api
NP_GetMIMEDescription() { return "application/basic-plugin:bsc:Basic plugin"; }
NPError NPP_New(NPMIMEType pluginType, NPP instance, uint16_t mode, int16_t argc, char* argn[], char* argv[], NPSavedData* saved) { if(instance->pdata == NULL) instance->pdata = new CPlugin(); #ifdef XP_MACOSX NPN_SetValue(instance, NPPVpluginEventModel, (void *)NPEventModelCocoa); #endif }