Версия манифеста

Расширения, темы и приложения — это просто пакеты ресурсов, заключенные в файл manifest.json , описывающий содержимое пакета. Формат этого файла в целом стабилен, но иногда необходимо вносить критические изменения для решения важных проблем. Разработчики должны указать, для какой версии спецификации манифеста предназначен их пакет, установив ключ manifest_version в своих манифестах.

Текущая версия

В настоящее время разработчикам следует указать 'manifest_version': 2 :

{
  ...,
  "manifest_version": 2,
  ...
}

Манифест версии 1 устарел в Chrome 18, и его поддержка будет прекращена в соответствии со следующим графиком.

График поддержки манифеста версии 1

август 2012 г.

  • Интернет-магазин заблокирует создание новых расширений манифеста версии 1.
  • Интернет-магазин позволит обновлять существующие расширения манифеста версии 1.

Март 2013 г.

  • Интернет-магазин заблокирует обновления расширений манифеста версии 1 4 марта 2013 г.

апрель 2013 г.

  • Бета-версия Chrome 27 перестанет упаковывать расширения манифеста версии 1 (или загружать их для разработки).

июнь 2013 г.

  • Интернет-магазин удалит расширения манифеста версии 1 со стены, результатов поиска и страниц категорий.
  • Всем разработчикам, чьи расширения манифеста версии 1 все еще находятся в магазине, будут отправлены электронные письма с напоминанием о том, что эти расширения будут отменены, и инструкциями по обновлению.

Сентябрь 2013 г.

  • Интернет-магазин отменит публикацию всех расширений манифеста версии 1.
  • Электронные письма с окончательным уведомлением будут отправлены разработчикам, чьи расширения манифеста версии 1 все еще находятся в Интернет-магазине.
  • Chrome продолжит загружать и запускать установленные расширения манифеста версии 1.

Январь 2014 г.

  • Chrome перестанет загружать или запускать расширения манифеста версии 1.

Изменения между версией 1 и 2

  • Политика безопасности контента установлена ​​на `script-src 'self'; object-src 'self'; по умолчанию. Это имеет различные последствия для разработчиков, подробно описанные в документации content_security_policy .
  • Ресурсы пакета больше не доступны по умолчанию для внешних веб-сайтов (в виде src изображения или тега script ). Если вы хотите, чтобы веб-сайт мог загружать ресурс, содержащийся в вашем пакете, вам необходимо явно внести его в белый список с помощью атрибута манифеста web_accessible_resources . Это особенно актуально для расширений, которые создают интерфейс на веб-сайте с помощью сценариев внедрения контента.
  • Свойство background_page было заменено свойством background , которое содержит либо scripts , либо свойство page . Подробности доступны в документации по страницам событий .
  • Изменения действий браузера:

  • Изменения действий на странице:

  • API chrome.self был удален. Вместо этого используйте chrome.extension .

  • chrome.extension.getTabContentses (!!!) и chrome.extension.getExtensionTabs исчезли. Вместо этого используйте расширение.getViews .

  • Port.tab пропал. Вместо этого используйте runtime.Port .