Firefox addon FirefoxSDK简单存储和Firefox同步
我目前正在将一个Chrome扩展转换为Firefox插件,希望能够复制Chrome.storage.sync功能 但是,我无法确定Firefox加载项使用时存储的数据是否会在加载项用户登录时自动同步 鉴于通过后一种方法存储的所有数据都可以在用户配置文件中找到,我认为它将。。。只要附加组件在上可用Firefox addon FirefoxSDK简单存储和Firefox同步,firefox-addon,firefox-addon-sdk,Firefox Addon,Firefox Addon Sdk,我目前正在将一个Chrome扩展转换为Firefox插件,希望能够复制Chrome.storage.sync功能 但是,我无法确定Firefox加载项使用时存储的数据是否会在加载项用户登录时自动同步 鉴于通过后一种方法存储的所有数据都可以在用户配置文件中找到,我认为它将。。。只要附加组件在上可用 非常感谢您提供有关此主题的任何信息。简单存储不同步。但是你可以轻松地同步它 存储存储对象的技巧是,根据定义,它可以序列化为字符串首选项,并告诉同步服务同步它 让我们命名该首选项syncstorage,并
非常感谢您提供有关此主题的任何信息。
简单存储
不同步。但是你可以轻松地同步它
存储存储
对象的技巧是,根据定义,它可以序列化为字符串首选项,并告诉同步服务同步它
让我们命名该首选项syncstorage
,并将其标记为可同步
var self=require(“sdk/self”);
var prefs=require(“sdk/首选项/服务”);
prefs.set(“services.sync.prefs.sync.extensions.”+self.id+“.syncstorage”,true);
将某些内容存储到简单存储时
反映对同步存储的更改
var sp=require(“sdk/simple prefs”);
var ss=需要(“sdk/简单存储”);
sp.prefs[“syncstorage”]=JSON.stringify(ss.storage);
要获得相反的效果,请查看更改syncstorage
sp.on(“同步存储”,函数(prefname){
ss.storage=JSON.parse(sp.prefs[“syncstorage”]);
})
最后但并非最不重要的一点是,只有在用户明确同意的情况下才进行同步可能是很好的,而且可能是强制性的。
简单存储
不同步。但是你可以轻松地同步它
存储存储
对象的技巧是,根据定义,它可以序列化为字符串首选项,并告诉同步服务同步它
让我们命名该首选项syncstorage
,并将其标记为可同步
var self=require(“sdk/self”);
var prefs=require(“sdk/首选项/服务”);
prefs.set(“services.sync.prefs.sync.extensions.”+self.id+“.syncstorage”,true);
将某些内容存储到简单存储时
反映对同步存储的更改
var sp=require(“sdk/simple prefs”);
var ss=需要(“sdk/简单存储”);
sp.prefs[“syncstorage”]=JSON.stringify(ss.storage);
要获得相反的效果,请查看更改syncstorage
sp.on(“同步存储”,函数(prefname){
ss.storage=JSON.parse(sp.prefs[“syncstorage”]);
})
最后但并非最不重要的一点是,只有在用户明确同意的情况下才进行同步可能是很好的,而且可能是强制性的。我不确定,但如果您可以访问两台计算机或一部Android手机/平板电脑,则很容易进行测试(.Android版Firefox中不提供首选项和加载项同步。我不确定,但如果您可以访问两台电脑或一部Android手机/平板电脑,则很容易测试(.Preference和addon Synching在Android版Firefox中不可用。感谢@paa!现在,这是有意义的。感谢@paa,我已经部分完成了这项工作。我可以看到本地pref更改和其他加载项安装的更改是以这种方式进行的,但我没有成功合并。相反,我得到的是
Sync.Engine.Prefs警告数据。)S:记录的本地和远程更改:LONG_ID_VALUE
@stackunderflow这只是一个使简单存储
可同步的技巧。解决合并冲突远远不止于此。如果简单存储
对象较大和/或复杂,请尝试将其同步到较小的独立块中。如果这没有什么区别然后描述重现错误的确切步骤。感谢paa的澄清。同时,我能够在linux和windows xp之间通过以下方式实现合并同步。Android版Firefox中没有同步太糟糕的首选项。感谢@paa!现在,这是有意义的。感谢@paa,我已经在部分工作。我可以n看到本地pref更改和其他加载项安装的更改是以这种方式出现的,但我没有获得成功的合并。相反,我得到了Sync.Engine.Prefs警告数据丢失:记录的本地和远程更改:LONG\u ID\u VALUE
@stackunderflow这只是一个使简单存储
可同步的黑客攻击。解决合并冲突远远超出此范围。如果您的简单存储
对象较大和/或复杂,请尝试在较小的独立块中对其进行同步。如果这没有影响,请描述复制错误的确切步骤。感谢paa的澄清。同时,我能够使用follo在linux和windows xp之间实现合并同步太糟糕了,Android版Firefox没有同步首选项。