flash activex java_Adobe flash player ActiveX和NPAPI和PPAPI 这三个软件有什么区别?

ActiveX 是属于 IE 且仅有 IE 支持(其他浏览器不支持)的插件技术,基于 COM 和 OLE 技术,貌似迄今在 IE11 (IE 已经停止更新)仍能使用!所以如果某个网站要求必须用 IE,那么就是因为用了 ActiveX 或 OCX 的缘故。

NPAPI 是 netscape 系浏览器的早期插件结构,技术实现和安全性,功能性来说,和 activex 几乎是等价的。由于会让浏览器背锅(因此浏览器让这些插件运行在独立进程里,靠进程间通讯来避开插件崩溃),加上插件权限等同于本地 C++ 程序,没有任何权限管控,安全性很难保障(受限于第三方开发者),所以 NPAPI 被 chrome 和 firefox 先后禁用。

PPAPI 是 chrome 提出的用于替代 NPAPI 的方案,好像是属于 native client 的组成部分。(这个地方不太好理解,所以我也很难描述清楚。时间也有点久了,既不太清楚了。总之就是由浏览器可以提供了一种“虚拟环境”,PPAPI 的能力和功能貌似是 chrome 浏览器提供的,总之就是”架空“插件到本地之间的连线。PPAPI 无法访问实际硬盘,实际硬件等东西,但是可以借助浏览器提供的一些类实现间接操控比如说摄像头等设备。但 firefox 态度非常冷漠的表示对 PPAPI 不感兴趣,不会跟进。因此 PPAPI 属于 chrome 独家技术,技术比较晦涩,需要下载专门的 sdk 和 google 改造过的 gcc 编译器,除了官方的示例和标杆,基本上无人问津,未见第三方开发者跟进。随着 html5 的蓬勃发展,很多原先需要插件的东西,已经可以直接由浏览器本身提供了,所以 PPAPI 很可能会逐渐没落!

于此同时,HTML5 也在发展,所谓 HTML5 我理解,就是把网站常用的一些功能归纳总结出来,指定成标准,由浏览器来实现,并提供出 js 接口。比如说,画布就相当于浏览器把 opengl 的内容适配到 js 接口。以及操作摄像头,麦克风。增加 websocket 协议等。可以看到,有了 HTML5,浏览器的功能被增强了,实现了很多原本必须借助于插件才能实现的东西。

总体来说,activex 和 ie ,微软对浏览器已经持放弃态度(微软对浏览器的尝试基本都失败了,竞争不过 chrome 和 firefox),相当于停更,也就是说微软可能已经放弃了浏览器(或者说反应迟钝)和支持 html5。NPAPI 已被 chrome 和 firefox 抛弃,现在已经不能用了。未来最有前途的就是 html5,例如 youtube 网站上的视频,就是 html5 支持的。而 adobe flash player 这个东西一直就负面评价很大,所以基本上也是处在正被抛弃的阶段。

PS:根据我的实践,activex 和 npapi 是可以集成为一个 dll 的。但这两个肯定和 ppapi 没法集成(ppapi 完全是不同的另一种技术,类似 java 和 jre)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值