Доступ к Firefox Add-on SDK из загрузочного расширения


Мне нужен доступ к точкам входа bootstrap, но также нужен доступ к приятным функциям, которые предоставляет Firefox Add-on SDK.

Как лучше всего это сделать?

2 2

2 ответа:

После более подробного исследования наиболее элегантным вариантом, по-видимому, является использование экспериментального --templatedir=TEMPLATEDIR варианта, который, по-видимому, идеально подходит для выполнения именно этого (с использованием пользовательского файла bootstrap.js). Это позволяет мне подключаться к этим функциям установки / удаления (если это необходимо) и использовать остальную часть SDK, как обычно.

Edit: кто-то попросил меня дать разъяснение о том, как cfx должно использоваться с --templatedir.

  1. скопируйте куда-нибудь каталог под названием app-extension, который содержит в себе bootstrap.js, application.ini, и install.rdf файлы в нем из загруженного SDK.
  2. выполните команду cfx xpi как обычную, но добавьте --templatedir=path/to/cloned/directory к параметрам.

Вы можете использовать Loader. Это то же самое, что использует SDK, и вы можете настроить его так, чтобы он мог загружать модули SDK. Хотя IIRC это не очень хорошо документировано, и есть некоторые тонкие детали о том, как вам нужно сделать установку, или некоторые модули SDK не будут работать правильно.

Я предлагаю вам прочитать связанную документацию выше, а затем использовать SDK bootstrap.js в качестве основы и разденьте его по мере необходимости (например, удалите все эти причудливые test вещи).

Также, чтобы приведем другой пример: @erikvold (который также работает или работал в команде SDK) реализовал минимальную поддержку внутренней загрузки (некоторых) модулей SDK в Scriptish.