Доступ к Firefox Add-on SDK из загрузочного расширения
Мне нужен доступ к точкам входа bootstrap, но также нужен доступ к приятным функциям, которые предоставляет Firefox Add-on SDK.
Как лучше всего это сделать?
2 ответа:
После более подробного исследования наиболее элегантным вариантом, по-видимому, является использование экспериментального
--templatedir=TEMPLATEDIR
варианта, который, по-видимому, идеально подходит для выполнения именно этого (с использованием пользовательского файлаbootstrap.js
). Это позволяет мне подключаться к этим функциям установки / удаления (если это необходимо) и использовать остальную часть SDK, как обычно.Edit: кто-то попросил меня дать разъяснение о том, как
cfx
должно использоваться с--templatedir
.
- скопируйте куда-нибудь каталог под названием
app-extension
, который содержит в себеbootstrap.js
,application.ini
, иinstall.rdf
файлы в нем из загруженного SDK.- выполните команду
cfx xpi
как обычную, но добавьте--templatedir=path/to/cloned/directory
к параметрам.
Вы можете использовать
Loader
. Это то же самое, что использует SDK, и вы можете настроить его так, чтобы он мог загружать модули SDK. Хотя IIRC это не очень хорошо документировано, и есть некоторые тонкие детали о том, как вам нужно сделать установку, или некоторые модули SDK не будут работать правильно.Я предлагаю вам прочитать связанную документацию выше, а затем использовать SDK
bootstrap.js
в качестве основы и разденьте его по мере необходимости (например, удалите все эти причудливыеtest
вещи).Также, чтобы приведем другой пример: @erikvold (который также работает или работал в команде SDK) реализовал минимальную поддержку внутренней загрузки (некоторых) модулей SDK в Scriptish.