14

Chrome имеет значительно более ограниченный API расширения, чем Firefox; в основном он состоит только из скриптов контента (с фоновыми страницами) и пары хуков для контекстных меню, всплывающих окон и тому подобного. Таким образом, мне кажется, что в Firefox может быть реализовано очень значительное подмножество API Chrome, либо как расширение Firefox, либо как отдельный "компилятор расширений", как это существует для сценариев Greasemonkey (что, кстати, является еще одним примером чего-то это работает точно так же, как скрипты содержимого Chrome). Если это будет реализовано, это позволит большинству расширений Chrome устанавливать и запускать в Firefox.

Я немного погуглил и нашел несколько упоминаний об очень старой попытке сделать это, но все ссылки на реальный репозиторий Mozilla для него теперь мертвы. Даже если бы это было не так, я был бы очень удивлен, если бы эта ранняя попытка все еще работала либо с Firefox 4, либо с последними изменениями в API расширения Chrome.

Поэтому мой вопрос: кто-нибудь знает, каково текущее состояние дел в отношении слоев совместимости API Chrome Extension в Firefox? Были ли какие-либо расширения или компиляторы расширений, пытающиеся решить проблемы, которые я поднял?

3 ответа3

7

Если есть такой зверь, даже разработчики Mozilla не знают об этом!

Многие "расширения" Chrome являются просто скриптами Greasemonkey, и их можно использовать с расширением Greasemonkey или компилятором в Firefox без изменений.

К сожалению, расширения, использующие другие API, должны быть перенесены. Если вы хотите перенести расширение Chrome на Firefox или планируете написать его для обоих, взгляните на новый API расширения Jetpack от Mozilla, который был разработан так, чтобы работать аналогично тому, как работают расширения Chrome, но все же предлагает Чрезвычайно расширенный доступ к браузеру, которым известен оригинальный API Firefox.

3

В то время как Mozilla готовит свой движок Servo следующего поколения, он также постепенно выводит из употребления старые надстройки (например, XPCOM и XUL) и представляет новые, такие как API WebExtensions, который «в значительной степени совместим с моделью, используемой в Chrome и Opera». - чтобы облегчить разработку расширений для нескольких браузеров ". API WebExtensions еще далеко не исчерпан, поэтому он меняется очень быстро; но если вы планируете перенести расширения Chrome на Firefox с оглядкой в будущее, то я рекомендую установить Firefox Nightly и замарать руки с помощью API WebExtensions сегодня. Вы можете прочитать больше об этом в ссылках ниже.

0

Вы можете использовать инструмент преобразования Extension Factory , чтобы преобразовать расширение Google Chrome в Firefox или Safari.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .