У меня есть собственное расширение для браузера с некоторыми персональными настройками веб-сайта. Отлично работает в Chrome, но не работает в Firefox.
В отличие от Chrome, кажется, что Firefox не может устанавливать распакованные расширения или надстройки. Только в режиме отладки я могу сделать Load Temporary Add-on
, выбрать папку с моим расширением, и это работает нормально. Только это временно.
Когда я упаковываю расширение, помещая файлы в .zip (не в подкаталог или что-то еще, архив просто непосредственно содержит файлы) и переименовываю его в .xpi, а затем выбираю Install Add-on from file
и выбираю мой .xpi, он говорит:
Надстройка, загруженная с этого сайта, не может быть установлена, так как она повреждена.
При устранении неполадок я сделал минимальное фиктивное расширение, которое ничего не делает и состоит только из файлов manifest.json
и dummy.js
. Затем упакуйте это из командной строки, используя 7z a -tzip test.xpi
в этом каталоге, что создаст мой zip-файл с именем test.xpi
, содержащий два файла. Загрузка этого расширения в Firefox дает указанную выше ошибку.
Для справки вот мой manifest.json:
{
"manifest_version": 2,
"name": "Test Extension",
"version": "1.0",
"description": "Dummy Text Extension",
"content_scripts": [
{
"matches": [ "*://*/" ],
"js": ["dummy.js"]
}
]
}
И содержимое dummy.js:
// this file is intentionally left blank
Опять же: отлично работает в Chrome, отлично работает в Firefox при загрузке как временное дополнение в режиме отладки (т.е. загружая файлы, в диалоге открытия выбираю файл manifest.json). Но загрузка .xpi для постоянной установки этого расширения приводит к ошибке «похоже, что она повреждена».
К вашему сведению: я использую последние версии Chrome и Firefox на macOS 10.15.5.
В целях тестирования, вот точный файл test.xpi, который я создал, но упаковка вручную, как описано выше, даст тот же результат.
works fine in Firefox when loading as temporary add-on
... Вы имеете в виду, что он устанавливается нормально, но этот аддон ничего не делает, так что вы не можете сказать, что онworks fine
. - person Deanie   schedule 18.05.2021