2011-10-03 87 views
3

我有一个支持Firefox 3+的Firefox扩展,并且SQLite数据库对于我的扩展很重要。我看到on the MDN API可能会改变,它“解冻”,我应该担心它吗?Firefox 3.0中的SQLite存储+

该API目前是“解冻”,这意味着它随时可能更改 ;事实上,Firefox自推出以来,每次发布 都有所变化,并且可能会继续为 这么做。

回答

4

此警告可能已过时,它已添加到多年前的文档的原始版本,并且自此以后未更新。事实是,从Firefox 4开始,所有的 API都解冻并可能发生变化。但这不应该是一个令人担心的理由。随着SQLite访问的进行,API现在看起来已经相当成熟,Mozilla开发人员大多都在调整性能,而不会引入重大更改。最重要的变化是在Firefox 3.5中引入了异步API,并且弃用了同步API。但只要你只使用异步API,你应该是安全的(我不能想象你真的需要支持古老的Firefox 3.0版本,我猜你实际上意味着Firefox 3.6)。

+0

嗨弗拉基米尔,感谢您的回答,我的意思是“古老的”firefox 3.0版本,目前我支持firefox 3.0+,所以firefox 3-3.5支持同步API和firefox 4+支持异步API,这些是不同之处? – Yosi

+0

@Yosy:Firefox 3.0仅支持同步API,从Firefox 3.5开始,支持异步API。你真的不应该使用同步API,它是导致Firefox 3.0中一些最糟糕的性能问题的原因。你应该认真考虑放弃对Firefox 3.0/3.5的支持。 –

0

对于如此广泛使用的东西,我怀疑它,但它很容易编写代码来解决这个问题,并保持你的插件向后兼容(至少在JavaScript中)。我最终做的是抽象的方法,确实改变和包装他们在我自己的电话,将做类似

if (methodInFF3) doFF3Method(); 
else doNewMethod(); 

或类似的东西。这种方式当事情发生变化时,我只需要在一个地方而不是多个地方更改代码,但是第一次发生这种情况时,我必须随时更改代码。对于SQLite我可能不会太担心,但这只是我,只要确保新版本发布时,您检查文档以查看是否有任何更改,并且您应该没问题。

+0

您可能会将其与'localStorage'混淆。至于SQLite访问,它已经改变 - 同步访问已被弃用,并可能在未来被删除。 –