首页 文章

有关Firefox插件/扩展的向后兼容性的问题

提问于
浏览
0

Background info:

在过去的一周里,我一直在搞乱Chrome扩展程序,并且创建我的扩展程序没有问题 . 很棒,Chrome让开发过程非常容易学习,而且......很简单!

现在我想到了我想为尽可能多的浏览器创建这个扩展,所以我接下来决定使用Firefox .

真是一团糟!文档没有做任何事情,但让我头疼,浪费我的时间到目前为止,非常复杂,只是一般无组织 .

我已经设法找到一个简单扩展的代码示例,我认为我可以使用它作为一个起点,并开始搞乱 - 很好...

我已经了解到这个示例扩展不适用于任何比Firefox 4更少的东西,因为它使用引导技术使扩展可以在不重启浏览器的情况下安装 . Ughhhhhh ....

Now we arrive at my questions:

  • 是否有可能为Firefox 7开发一个可与以前版本的Firefox一起使用的扩展程序?我甚至不关心Firefox 4之前的任何事情,如果这是无重启安装的截止点 . 很高兴知道我所花费的所有时间都会持续工作,并且会提示用户下一次升级超过一周 .

  • 反过来怎么样?我可以通过Firefox 7创建与Firefox 3.5兼容的扩展吗?我意识到它需要重新启动才能安装,但如果它导致工作扩展而不管版本如何,那将是可以接受的 .

  • 任何有这方面经验的人都可以分享一些我自己进入这里的东西吗?看起来这是一个开发平台的噩梦,我将不断修复我的扩展 .

One last piece of relevant information:

我正在开发的扩展程序纯粹是基于javascript的 - 这个东西应该可以工作(我想?)因为它在这个版本之间的实现正在改变......对吗?

那我到底错过了什么?如何创建易于管理的Firefox扩展,可以在所有版本的浏览器中使用?

感谢大家! :)

1 回答

  • 2

    您必须区分"traditional"扩展和使用Add-on SDK构建的扩展 . 前者功能强大得多,因为它们可以直接访问浏览器使用的所有API - 但这也是为什么它们编写起来比较复杂以及为什么文档相当无序的原因(你可以做很多事情,远远超过你的Chrome) . 随着浏览器的变化,它们也更容易破裂 . 另一方面,Add-on SDK为您提供了一个有限的API,就像Chrome一样 . 附加SDK目前支持从Firefox 4开始的所有内容(是的,因为无重新安装),并承诺浏览器更改只需要使用更新版本的附加SDK重新编译您的附加组件 . 实际上,为addons.mozilla.org上托管的附加组件重新编译will likely happen automatically in future . 关于你的问题:

    是否有可能为Firefox 7开发一个可与以前版本的Firefox一起使用的扩展程序?

    当然是啦 . 附加SDK当前标记您的附加组件与Firefox 4 Beta 7和Firefox 8 Alpha 1之间的任何内容兼容 . 即使是传统的附加组件 - 从Firefox 4开始,特定浏览器版本之间的差异相当小,大多数情况下在所有这些方面工作 . 您还可以与Firefox 3.x保持兼容,但根据您的操作,可能需要一些努力 . 重要信息:

    反过来怎么样?我可以通过Firefox 7创建与Firefox 3.5兼容的扩展吗?

    你走哪条路并不重要 . 我不建议花很多时间在Firefox 3.x支持上 . 不再支持Firefox 3.5,唯一相关的版本是Firefox 3.6 . 根据我的附加组件的统计数据,大约18%的Firefox用户继续使用它 . 在接下来的几个月里,这个百分比将会明显变小,特别是当Mozilla宣布该分支机构的寿命结束时 . 因此,对于新的附加组件支持,通常是不合理的 .

    任何有这方面经验的人都可以分享一些我自己进入这里的东西吗?

    取决于你的插件有多复杂 . 鉴于您正在开发等效的Chrome扩展程序,您很可能会使用附加SDK,这意味着不会出现任何兼容性问题 . 随着传统的附加组件的发展,不依赖于某些模糊实现细节的简单附加组件通常也没有任何问题保持兼容(我有两个附加组件,自Firefox 3.5以来不需要一次调整) . 当然,深入到系统中的附加组件更成问题 .

相关问题