垂涎 Chrome 扩展的不止微软,现在 Firefox 也来了。

Mozilla 8 月 21 日在官方博客上宣布,接下来,Firefox 浏览器也将会兼容 Chrome 扩展,开发者只需要做很小的修改就可以让扩展既可以运行在 Chrome 上也能运行在 Firefox 上。

如果你之前有注意相关新闻的话,这是继 Microsoft Edge 后,又一个主流浏览器尝试“收编”Chrome 的扩展。以后,开发者有望写一套扩展代码,然后在打包时做少量的修改就能让它同时运行在 Chrome、Opera、Microsoft Edge、Firefox 这四款主流浏览器上。

对于现在的 Firefox 用户来说,上面的内容可以说是个好消息,毕竟以后 Firefox 扩展的数量有望增多了嘛。但接下来还有一个不那么好的消息就是:你正在用的这些 Firefox 扩展如果得不到开发者的适配的话,那么它们在 12-18 个月后可能就不能在 Firefox 上继续运行了。因为 Firefox 计划在 12- 18 后弃用 XUL 和 XPCOM 技术,而这两项技术又支撑着 Firefox 现有的很多扩展,所以那些仅为 Firefox 开发扩展的开发者如果想让自己的产品继续运行在 Firefox 上的话就必须做出改变。

那么在弃用了这些旧的技术标准之后,Firefox 将用什么来替代呢?

chrome浏览器扩展方案(垂涎Chrome扩展的不止微软)(1)

按照 Mozilla 的说法,在 Firefox 接下来的迭代中,一个名为 WebExtensions 的新扩展 API 将会被添加进去。由于这个 API 的技术规格和 Chrome 以及 Opera 扩展使用的规格几乎一致,所以以后开发者将可以实现跨浏览器开发扩展。这就好比写一个网页能运行在各个浏览器上一样,以后扩展也是这种发展趋势——当然,自我封闭的 Safari 是个例外。

但对于现有的 Firefox 用户来说,由于 Firefox 现有的扩展并不是所有的都能通过这个 WebExtensions API 以及现存的 SDK 实现,所以有一种最坏的情况就是即便开发者努力,某些现有的 Firefox 扩展功能也没法在后续的 Firefox 中出现了。当然了,Mozilla 也表示他们会尽力让那些被广为使用的扩展能重新出现在用户面前。

按照计划,从 Firefox 43 开始,Mozilla 将会增加对这些新 API 的支持,这个时间点已经被设定在 12 月 15 号。从那之后,Firefox 仅对未修改的扩展提供 6 个月的兼容期限。

对于 Firefox 来说,做出这样的选择其实是个挺艰难的决定,毕竟这意味着 Firefox 之前在扩展方面的积累几乎全被抛弃了。但如果不做这个艰难的决定的话,至少从开发者生态角度看,Firefox 继续走下去就类似于慢性自杀;而做出这个选择之后,痛苦就只是暂时的,后续在扩展发展方面有望会越来越好。

其实,当第三方开发者成为浏览器、操作系统中一个不可或缺的环节之后,很多厂商都要面临与 Firefox 相似的问题——市场份额第三、第四的不得不考虑兼容第一名、第二名所积累的优势第三方开发资源。在这个事情上,反应快的或许还有明天,反应慢的就类似于是在给自己补刀了。

,