我有一个扩展程序,允许用户更改Firefox的某些默认设置(例如主页,搜索引擎)。我是通过更改某些偏好设置的值来实现的,例如browser.startup.homepage
,browser.search.defaultEngineName
)。
我尝试在用户卸载扩展程序时重置这些设置的默认值。现在我通过记住原始值并将其重新设置为卸载来实现。但我想知道,如果有一个更简单的解决方案。
在首先记住首选项之前,是否可以将首选项重置为原始值?
有获取和设置值的方法。但我找不到重置或检索首选项默认值的方法。有没有这样的方法?
感谢。
答案 0 :(得分:2)
您可以随时reset the preference to the application default:
Components.utils.import("resource://gre/modules/Services.jsm");
Services.prefs.clearUserPref("browser.startup.homepage");
供参考:Services.jsm
然而,这将始终将主页重置为about:home
- 如果用户自定义了主页,则该更改将丢失,这在您的情况下可能是不可取的。并且没有内置功能可以“重置优先级到安装扩展程序之前的值”,您必须自己保存值。