Доступ к 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.