NPAPI 插件在 Chrome 上运行不佳
NPAPI Plugin doesn't work well on Chrome
我尝试了 npapi
和 firebreath
,但它们都只在 Firefox 上运行良好,并且很容易卡在 Chrome 上。我在插件中写的函数是simplist "return 0;"
。我处理了 Xemd 案例。
NPError NPP_GetValue(NPP instance, NPPVariable variable, void *value)
{
...
switch (variable) {
case NPPVpluginNeedsXEmbed:
*((BOOL*)value) = TRUE;
...
}
我不确定您使用的是什么版本; Chrome 2014 年停止支持 NPAPI 插件(受 FireBreath 1 支持); Firefox 在 Firefox 52 中停止了对 NPAPI 插件的支持,尽管我相信有一个 LTS 版本的 firefox 52 继续支持它们一年半(现在可能已经结束)。
简而言之,NPAPI 几乎已经死了——在常用浏览器中最后一个坚持的是 Safari,它会随着 macOS Mojave 的发布而消失。
有一种方法可以编写 firebreath 2 插件并使其通过本机消息传递工作,但过程有点复杂,而且没有很好的文档记录;您可以在 firebreath-dev google 组中找到信息,并在那里提出澄清问题。
当我尝试使用 chrome 版本 22 时问题已解决。更高版本也可能有效。
好不容易找到这么老的版本,我的插件恐怕永远用不上了-_-||
我尝试了 npapi
和 firebreath
,但它们都只在 Firefox 上运行良好,并且很容易卡在 Chrome 上。我在插件中写的函数是simplist "return 0;"
。我处理了 Xemd 案例。
NPError NPP_GetValue(NPP instance, NPPVariable variable, void *value)
{
...
switch (variable) {
case NPPVpluginNeedsXEmbed:
*((BOOL*)value) = TRUE;
...
}
我不确定您使用的是什么版本; Chrome 2014 年停止支持 NPAPI 插件(受 FireBreath 1 支持); Firefox 在 Firefox 52 中停止了对 NPAPI 插件的支持,尽管我相信有一个 LTS 版本的 firefox 52 继续支持它们一年半(现在可能已经结束)。
简而言之,NPAPI 几乎已经死了——在常用浏览器中最后一个坚持的是 Safari,它会随着 macOS Mojave 的发布而消失。
有一种方法可以编写 firebreath 2 插件并使其通过本机消息传递工作,但过程有点复杂,而且没有很好的文档记录;您可以在 firebreath-dev google 组中找到信息,并在那里提出澄清问题。
当我尝试使用 chrome 版本 22 时问题已解决。更高版本也可能有效。 好不容易找到这么老的版本,我的插件恐怕永远用不上了-_-||