我想使用require('sdk/preferences/service')
同步我的Firefox插件的設置。如何同步FF簡單首選項
這裏我不工作的試驗: 的package.json:
{
"title": "Test",
"name": "test",
"author": "devname",
"version": "1.0.0",
"main": "lib/main.js",
"engines": {"firefox": ">=38.0a1","fennec": ">=38.0a1"},
"license": "MPL-2.0",
"id": "[email protected]",
"permissions": {"private-browsing": true},
"dependencies": ["addon-kit"],
"preferences": [{
"title": "Color 1",
"type": "color",
"value": "#000000",
"name": "1"
}]}
的lib/main.js:
const
addonid = require('sdk/self').id,
simprefs = require('sdk/simple-prefs'),
simstore = require('sdk/simple-storage'),
service = require('sdk/preferences/service'),
store = simstore.storage
;
service.set('services.sync.prefs.sync.extensions.' + addonid + '.syncy', true);
simprefs.on('1', function() {
simprefs.prefs["syncy"] = simprefs.prefs["1"];
});
})();
所以,當在附加組件,管理我設置pref 1顏色#777777然後pref syncy將獲得相同的值(在about:config頁面上可見)。
當我使用2個Firefox配置文件並向Mozilla註冊以進行同步並在每個配置文件上安裝此插件時,我預計在一個配置文件上更改此值會在另一個配置文件上更改它(因此about:config - > extensions .test @ devname.org.syncy) - 但它沒有。
我該怎麼做?
謝謝!這似乎是一個好主意,但我試圖讓它改變這個由逗號分隔的可信源代碼字符串 - 但是我做錯了或者它沒有按預期工作。任何想法如何擴展字符串「addons.mozilla.org」? - >「addons.mozilla.org,???」 - 謝謝 – user1521685