我有一个用户维护链接列表的扩展程序。将这些数据在计算机之间同步(在工作和家中)会很好。有哪些可能的解决方案?
Chrome有扩展同步选项,但我不确定它是否同步数据(如果是,我会感到惊讶)。即使它确实如此,也不是每个人都希望同步所有其他扩展。
我可以将我的链接存储在一个特殊的书签文件夹中,并使用内置的书签同步,但在这种情况下,所有书签也会同步(并非所有用户都希望这样)。
我可以使用的任何外部网站?容易使用并链接到谷歌帐户?
(我不想为此建立自己的网站)
答案 0 :(得分:27)
修改:从Chrome 20及更高版本开始,您可以使用chrome.storage模块保存到云端。
chrome.experimental.storage.sync.set({'settingAlwaysOn': true}, function() {
console.log('Saved option in the cloud');
});
在Chrome 20之前
您说得对,Chrome Sync for extensions选项(在设置中)不会同步扩展数据。同步这些数据的唯一方法是通过第三方。
由于您排除了书签的使用,如果用户不希望同步书签,这是有意义的。
每当您通过存储(Web SQL存储,localStorage,IndexDB)持久存储数据时,您将获取该对象,并将其序列化为JSON(通过JSON.stringify),然后将其发送到某些在线服务,例如Google Docs。 / p>
对于Web SQL Storage和IndexDB来说,这将是非常棘手的,您必须自己进行导入和导出。对于localStorage,它非常简单,因为它是一个键/值对。
将其与Google帐户(例如Docs)相关联需要一些工作,您必须使用OAuth并进行管道连接以将您的扩展程序连接到服务。一旦你连接起来,维持状态并不困难。
祝你好运:)答案 1 :(得分:26)
Chrome 20支持chrome.storage.sync API。它似乎完全符合您的要求。