Как интегрировать Firefox Sync? - PullRequest
4 голосов
/ 14 ноября 2010

Firefox 4 скоро выйдет (хорошо, в следующем году;)), и есть плагин Firefox для синхронизации ваших закладок и т. Д. С Firefox 3. что угодно.

Я хотел бы знать, есть ли у кого-нибудь всеобъемлющийновейшее руководство по интеграции Firefox Sync в ваш собственный плагин?Или есть какие-нибудь идеи по этому поводу?

Я в основном следовал этому официальному "учебнику" , а также этому сообщению в блоге , но информация, похоже, немного устарела.Например, объект больше не называется Weave, но Engines и предпочтение weave.engines. стало services.sync.engines..Я немного поиграл со всеми упомянутыми опциями, но, похоже, он не работает (и мой плагин не отображается в списке, где вы можете выбрать, что синхронизировать).

Я предполагаю, что Tracker иStore классы в порядке, основная проблема заключается в регистрации двигатель ...

1 Ответ

4 голосов
/ 17 ноября 2010

Учебное пособие ClientAPI , о котором вы упомянули, определенно подходит. Я недавно обновил его, поэтому, если что-то не работает, пожалуйста, дайте нам знать, чтобы я мог исправить это в документации. Блог Владимира определенно довольно старый и содержит устаревшую информацию. Мы также внесем изменения в некоторые части API в следующих бета-версиях, так что будьте готовы к некоторым изменениям ...

Пространство имен Weave по-прежнему является каноническим способом доступа к API, связанным с синхронизацией, из кода пользовательского интерфейса. Он выставляет такие компоненты, как Weave.Service и Weave.Engines. Вы можете импортировать его через Components.utils.import("resource://services-sync/main.js"). Если вы хотите реализовать свой собственный движок, вам, тем не менее, придется импортировать фактические базовые модули (все они перечислены в руководстве по ClientAPI). В руководстве также описывается, как зарегистрировать собственную реализацию движка. Однако после регистрации он не будет автоматически отображаться в пользовательском интерфейсе настроек. Я предлагаю создать свой собственный пользовательский интерфейс, который переворачивает префикс services.sync.engine.YOURENGINE в настройках вашего дополнения.

Из любопытства, какие данные вы пытаетесь синхронизировать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...