Регулярно проверяйте эту страницу, чтобы узнавать об изменениях в расширениях Chrome, документации к расширениям, а также о связанных с ними изменениях в политике и других изменениях. Другие уведомления вы найдете в списке рассылки расширений Chrome . В расписании Chrome указаны даты стабильных и бета-версий.
Chrome 150: Контекстные меню вкладки
Опубликовано на
Начиная с Chrome 150, chrome.contextMenus поддерживает контекст "tab" , позволяя добавлять элементы в контекстное меню вкладки, вызываемое щелчком правой кнопки мыши. При выборе нескольких вкладок элементы получают доступ ко всем выбранным вкладкам. Подробнее можно узнать в списке рассылки .
Chrome 150: Ограничение на длину имени будильника
Опубликовано на
Начиная с Chrome 150, chrome.alarms.create() устанавливает ограничение в 1024 байта для имен будильников. Передача более длинного имени приводит к TypeError . Подробнее можно узнать в списке рассылки .
Chrome 149: Синхронная проверка UserScript
Опубликовано на
Начиная с Chrome 149, chrome.userScripts.execute() синхронно проверяет синтаксис скрипта и возвращает диагностическую информацию в случае ошибки. Подробности см. в описании метода chrome.userScripts.execute() .
Chrome 149: Поддержка промисов API в инструментах разработчика
Опубликовано на
Начиная с Chrome 149, chrome.devtools.inspectedWindow.eval() , inspectedWindow.getResources() и network.getHAR() возвращают промисы. Поддержка коллбэков сохраняется для обеспечения обратной совместимости. Подробности см. в chrome.devtools.inspectedWindow .
Запись в блоге: Расширьте возможности своей команды, добавив расширенные роли в панели разработчика.
Опубликовано на
Теперь вы можете напрямую приглашать участников в свой аккаунт издателя Chrome Web Store и назначать им одну из четырех различных ролей. Вам больше не нужно создавать отдельный аккаунт издателя или добавлять участников в группу Google. Это можно сделать бесплатно, без уплаты регистрационного сбора в размере 5 долларов. Подробнее читайте в статье блога .
Запись в блоге: Разблокировка функции структурированного клонирования для расширений Chrome для обмена сообщениями
Опубликовано на
Начиная с Chrome версии 148, вы можете включить использование алгоритма структурированного клонирования для сериализации сообщений в вашем расширении. Подробнее читайте в статье блога .
Статья в блоге: Chrome Web Store: более интеллектуальный и быстрый процесс обжалования
Опубликовано на
Обжалуйте решение о применении правил Chrome Web Store непосредственно из панели разработчика Chrome Web Store. Узнайте о новой процедуре обжалования .
Chrome 148: Пространство имен браузера
Опубликовано на
Начиная с Chrome 148, все API расширений Chrome теперь доступны в пространстве имен browser в качестве кроссбраузерной альтернативы пространству имен chrome См. раздел «Пространство имен браузера» для получения рекомендаций по внедрению.
Запись в блоге: Опубликовать для внешних организаций
Опубликовано на
Теперь вы можете публиковать свои расширения в закрытом режиме для внешних организаций, которые их одобрят. Узнайте, как публиковать расширения для внешних организаций .
Видео: Как узнать, безопасно ли запрашивать разрешения в вашем расширении Chrome.
Опубликовано на
Узнайте, как добавление нового разрешения к вашему расширению отображается для пользователей в нашем последнем видео .
Видео: Всё, что произошло с расширениями Chrome в 2025 году.
Опубликовано на
Оливер подводит итоги 2025 года, рассказывая обо всех новинках этого года — смотрите прямо сейчас .
Видео: Можно ли создать кроссбраузерное расширение для Chrome?
Опубликовано на
Узнайте, как создать кроссбраузерное расширение, в нашем последнем видео .
Видео: Как обеспечить безопасность ключей API в расширении Chrome?
Опубликовано на
Узнайте, как обеспечить безопасность ключей API, посмотрев наше новое видео .
Видео: Ответы на ваши вопросы о доступности товаров в Chrome Web Store.
Опубликовано на
В нашем последнем видео мы отвечаем на ваши вопросы о поиске приложений в Chrome Web Store.
Chrome 140: Новый API sidePanel.getLayout()
Опубликовано на
Начиная с Chrome 140, используйте новый API sidePanel.getLayout() , чтобы определить, расположена ли боковая панель слева или справа от экрана. Это особенно полезно, если вы поддерживаете языки с написанием справа налево (RTL), где в новых версиях Chrome настройки по умолчанию отличаются.
Новое руководство: жизненный цикл обновления расширений.
Опубликовано на
Мы опубликовали новое руководство, объясняющее, как обновлять расширения в Chrome .
Chrome 139: Удаление флагов --extensions-on-chrome-urls и --disable-extensions-except в фирменных сборках Chrome
Опубликовано на
Начиная с Chrome 139, флаги командной строки --extensions-on-chrome-urls и --disable-extensions-except будут удалены в официальных сборках Chrome. Подробнее можно узнать в списке рассылки .
Chrome 138: Изменения на странице новой вкладки
Опубликовано на
Начиная с версии Chrome 138, мы обновляем пользовательский интерфейс новой вкладки, добавляя новый нижний колонтитул. Подробнее можно узнать в списке рассылки .
Запись в блоге: Обновите свои расширения перед предстоящими изменениями в закладках.
Опубликовано на
Мы вносим некоторые изменения в синхронизацию закладок, которые могут повлиять на работу вашего расширения. Подробнее читайте в статье блога .
Запись в блоге: Что будет происходить с расширениями Chrome в июне 2025 года
Опубликовано на
Мы были заняты: участвовали в Google I/O и внедрили несколько новых функций в Chrome и Chrome Web Store. Узнайте все подробности в разделе «Что происходит в расширениях Chrome, июнь 2025 года »!
Видео: Игра «Ударь крота» в вашем браузере — это возможно?!
Опубликовано на
Узнайте, как создать игру в браузере, посмотрев наше новое видео .
Видео: Объяснение нового меню расширений Chrome
Опубликовано на
Узнайте больше об экспериментальном новом меню расширений в нашем последнем видео « Объяснение нового меню расширений Chrome» .
Видео: Наращивание волос — это круто!
Опубликовано на
В первом эпизоде «Расширения — это здорово» вы узнаете, как начать разработку расширений, а во втором эпизоде — насколько гибкими могут быть возможности настройки Chrome!
Chrome 135: Новый API userScripts.execute()
Опубликовано на
Начиная с Chrome 135, в API chrome.userScripts появился новый метод userScripts.execute() . С его помощью можно внедрить пользовательский скрипт один раз в произвольное время, вместо того чтобы регистрировать его постоянно.
Chrome 132: Просмотр и редактирование хранилища расширений в инструментах разработчика.
Опубликовано на
Начиная с Chrome 132, вы можете просматривать и редактировать данные, хранящиеся с помощью API chrome.storage , в инструментах разработчика. Для получения дополнительной информации см. новую страницу «Просмотр и редактирование хранилища расширений» в документации инструментов разработчика.
Запись в блоге: Новое меню расширений
Опубликовано на
На конференции Google I/O 2024 мы представили предварительные эскизы будущих изменений в меню расширений, которые предоставят пользователям больше контроля над сайтами, к которым расширения могут получать доступ. Вскоре мы начнем тестирование этих изменений, сначала на небольшой части пользователей в версии Canary, и надеемся в будущем внедрить их более широко.
Мы также представляем API chrome.permissions.addHostAccessRequest() .
Подробнее читайте в нашей статье в блоге .
Chrome 132: Новое свойство «заморожено» в API вкладок.
Опубликовано на
Начиная с Chrome версии 132, свойство frozen в Tabs API указывает, была ли вкладка заблокирована браузером. Сообщения, отправленные заблокированным вкладкам, будут поставлены в очередь и обработаны после разблокировки вкладки.
API подсказок в расширениях Chrome
Опубликовано на
API Prompt для расширений теперь доступен в пробной версии, так что вы можете создавать расширения Chrome, использующие модель Foundation, прямо в браузере.
Присоединяйтесь к пробной версии Prompt API, работающей в Chrome с 131 по 136, и поделитесь своим мнением. Ваши отзывы могут напрямую повлиять на то, как мы будем разрабатывать и внедрять будущие версии этого API, а также всех встроенных API для искусственного интеллекта.
Запись в блоге: Что происходит с расширениями Chrome в октябре 2024 года
Опубликовано на
Пришло время подвести итоги событий в мире расширений Chrome: у нас есть интересные обновления по интеграции ИИ, новые API, события и видеоролики. Читайте обо всем этом в октябрьском выпуске «Что происходит в мире расширений Chrome» !
Примите участие в конкурсе Built-in AI Challenge
Опубликовано на
Chrome запустил конкурс Built-in AI Challenge: вам предлагается создать инновационные веб-приложения и расширения Chrome, используя встроенные модели искусственного интеллекта и API Chrome , и получить шанс выиграть призы на общую сумму 65 000 долларов США.
Зарегистрируйтесь и получите дополнительную информацию на сайте Built-in AI Challenge . Мы с нетерпением ждём, что вы создадите, внедрив искусственный интеллект в веб-технологии!
Chrome 130: action.onUserSettingsChanged
Опубликовано на
Начиная с Chrome 130, стало доступно событие action.onUserSettingsChanged . Это стало возможным благодаря предложению, выдвинутому в группе WebExtensions Community Group. Благодарим Microsoft за вклад в Chromium.
Chrome 130: StorageArea.getKeys()
Опубликовано на
Начиная с Chrome 130, метод getKeys() доступен в интерфейсе StorageArea, используемом API chrome.storage . Это стало возможным благодаря предложению, выдвинутому в сообществе WebExtensions.
Chrome 128: Сопоставление заголовков ответа в запросе Declarative Net.
Опубликовано на
Начиная с Chrome 128, мы добавляем поддержку сопоставления заголовков ответа в API запросов Declarative Net. Это был распространенный запрос, особенно касающийся сопоставления заголовка Content-Type, и мы разработали подходящий API совместно с группой сообщества WebExtensions.
Мы обновили справочник API, добавив новые поля responseHeaders и excludedResponseHeaders . Вы можете использовать их для проверки наличия и значения заданного заголовка.
В рамках этого обновления мы добавили в нашу документацию новый раздел , посвященный оценке правил , в котором объясняется, как происходит сопоставление правил. В частности, для сопоставления заголовков правила могут выполняться только после получения заголовков ответа, поэтому они применяются на более позднем этапе, чем другие правила. Это означает, что запрос достигает сервера до того, как будет заблокирован или перенаправлен.
Видео: Что такое сценарии контента?
Опубликовано на
Узнайте о скриптах контента в расширениях Chrome, в том числе о том, как зарегистрировать CSS и JavaScript для выполнения на определенной странице. Посмотрите полное видео .
Важные обновления политики
Опубликовано на
Команда Chrome Web Store опубликовала ряд обновлений на странице «Политика программы для разработчиков» , призванных стимулировать разработку высококачественных продуктов, предотвращать обманные действия и обеспечивать информированное согласие пользователей. Ребекка Соарес, менеджер по политике Chrome Web Store, обобщила все обновления в статье блога «Расширения Chrome: Важные обновления политики» .
Запись в блоге: Что происходит с расширениями Chrome, июль 2024 г.
Опубликовано на
За последние три месяца мы выпустили несколько важных обновлений и новых функций, включая начало поэтапного вывода из эксплуатации Manifest V2. Узнайте все самое интересное в июльском выпуске «Что происходит в расширениях Chrome» !
Видео: Что такое удаленно размещенный код?
Опубликовано на
Патрик из команды разработчиков расширений Chrome объясняет концепцию удаленно размещенного кода (RHC) в расширениях Chrome. Узнайте, почему RHC больше не разрешен, как его обнаружить и что делать, если ваше расширение нуждается в обновлении. Посмотрите полное видео .
Chrome 127: Новый API action.openPopup
Опубликовано на
Начиная с Chrome версии 127, API action.openPopup доступен для всех расширений. Ранее он был доступен только в версии Canary или для расширений, установленных с помощью политики.
Видео: Интервью с командой по вопросам доверия и безопасности.
Опубликовано на
Команда разработчиков расширений Chrome побеседовала с командой по вопросам доверия и безопасности, которая занимается проверкой расширений в Chrome Web Store, чтобы задать вам вопросы. Посмотрите полное видео .
Сообщение в блоге: Начался поэтапный вывод из эксплуатации Manifest V2.
Опубликовано на
Начиная с 3 июня в каналах Chrome Beta, Dev и Canary, у пользователей, у которых всё ещё установлены расширения Manifest V2, при посещении страницы управления расширениями — chrome://extensions — появится предупреждение о том, что поддержка некоторых установленных расширений (Manifest V2) вскоре прекратится. Подробнее читайте в официальном объявлении.
Обновления пользовательского интерфейса боковой панели.
Опубликовано на
Недавно мы внесли некоторые изменения в пользовательский интерфейс боковой панели, в том числе добавили значок булавки и удалили глобальный значок боковой панели. Подробнее читайте в сообщении об обновлении (PSA) , а также ознакомьтесь с обновленной документацией и примерами .
Запись в блоге: Расширения Chrome на Google I/O 2024
Опубликовано на
Очередная конференция Google I/O позади, и мы рассказали обо всех интересных обновлениях расширений! Заходите на YouTube, чтобы посмотреть полное видео , и читайте нашу статью в блоге, где собраны некоторые из самых интересных моментов.
Пропустить проверку для допустимых изменений в запросах декларативной сети.
Опубликовано на
В Chrome Web Store теперь можно пропускать проверку допустимых изменений при использовании API Declarative Net Request. Подробнее о допустимых изменениях и способах их включения можно узнать в документации Chrome Web Store .
Параметр deployPercentage доступен в API Chrome Web Store.
Опубликовано на
Мы недавно обновили документацию по API Chrome Web Store, добавив информацию о deployPercentage , который позволяет назначать процент частичного развертывания. Узнайте больше о deployPercentage .
Chrome 126: Тестирование расширений Origin
Опубликовано на
В Chrome 126 появилось новое поле в файле manifest.json — trial_tokens , позволяющее подключаться к пробным версиям Origin и Deprecation Trials для всех расширений. Подробнее см. в руководстве .
Запись в блоге: Что нового в расширениях Chrome — апрель 2024 года
Опубликовано на
Мы опубликовали новый выпуск рубрики «Что происходит в расширениях Chrome» . В статье рассказывается о том, над чем работала команда разработчиков расширений в течение последних нескольких месяцев. Это включает в себя: откат версий в Chrome Web Store, улучшенную поддержку аутентификации Firebase, а также запуск и обновление новых API.
Откат версий в панели разработчика Chrome Web Store
Опубликовано на
Откатите расширение до предыдущей версии, опубликованной в Chrome Web Store, — без дополнительной проверки! Подробнее читайте в блоге и документации .
Chrome 124: Расширенный API documentScan
Опубликовано на
В ChromeOS теперь доступен расширенный API documentScan для обнаружения и извлечения изображений с подключенных сканеров документов.
Chrome 124: Поддержка WebGPU в Service Workers
Опубликовано на
Начиная с Chrome версии 124, сервис-воркеры поддерживают WebGPU . Для быстрого начала ознакомьтесь с примером расширения WebGPU .
Chrome 123: API событий поддерживает фильтрацию по блокам CIDR.
Опубликовано на
API событий теперь поддерживает фильтрацию по блокам бесклассовой междоменной маршрутизации (CIDR). Блок CIDR — это набор IP-адресов, имеющих общий сетевой префикс и одинаковое количество битов. Ранее разработчику, которому нужно было фильтровать несколько IP-адресов, приходилось настраивать правило фильтрации для каждого адреса в диапазоне блока. Теперь, когда расширение вызывает addListener() , переданное правило означает, что обработчик событий будет вызываться только тогда, когда часть URL-адреса, содержащая хост, является IP-адресом и содержится в любом из блоков CIDR, указанных в массиве.
Chrome Web Store: Обновления требований к длине имени расширения.
Опубликовано на
В Chrome Web Store теперь действует универсальное ограничение в 75 символов для поля "name" в файле manifest.json расширения. Ранее для английского языка ограничение составляло 45 символов, а для других языковых версий ограничений для поля "name" не было.
Изначально это было задумано для учета культурных и языковых различий, которые невозможно передать одним и тем же количеством символов. К сожалению, эта функция была использована некоторыми разработчиками для рассылки спама в магазине. В результате мы вводим новый универсальный лимит — увеличение до 75 символов. Этот лимит распространяется почти на все расширения в магазине, поэтому, скорее всего, от вас не потребуется никаких действий в связи с этим изменением. Если вы попытаетесь загрузить расширение с названием длиннее максимального лимита, загрузка будет заблокирована магазином.
Запись в блоге: Путь eyeo к тестированию приостановки работы сотрудников сферы услуг
Опубликовано на
В этой статье от команды разработчиков Extension Engine компании eyeo мы рассмотрим проблему тестирования сервисных воркеров расширений. В Manifest V2 расширения работали на фоновой странице, которая оставалась активной на протяжении всего жизненного цикла расширения. В Manifest V3 вместо этого используются сервисные воркеры, которые, по своей сути, экономят ресурсы, отключаясь, когда они не нужны. Это создает определенные проблемы при тестировании. В этой статье объясняется, как eyeo решила эти проблемы .
Chrome 123: Теперь будильники срабатывают, когда устройство находится в спящем режиме.
Опубликовано на
Будильники, установленные с помощью API chrome.alarms , больше не срабатывают с задержкой, когда устройство переходит в спящий режим. Когда устройство просыпается, будильник срабатывает один раз, независимо от того, сколько будильников было пропущено. Например, предположим, что будильник установлен на срабатывание раз в час, и устройство, на котором он установлен, находится в спящем режиме с 00:55 до 02:05. Тогда событие onAlarm сработает только в 02:00. Оно сработает как можно ближе к 02:00 и немедленно, как только устройство просыпается, если оно находилось в спящем режиме.
Это изменение приводит Chrome в соответствие с согласованным поведением в группе сообщества веб-расширений.
Запись в блоге: Изменения в поведении bfcache при работе с портами сообщений расширений
Опубликовано на
Кэширование "назад/вперед" (bfcache) — это оптимизация браузера, позволяющая мгновенно переходить по ссылкам "назад" и "вперед". Начиная с Chrome 123, когда страница с открытым портом расширения сохраняется в bfcache, канал сообщений закрывается, то есть сообщения на эту страницу отправляться не будут. Следовательно, скрипты расширений должны отслеживать события жизненного цикла, такие как onDisconnect , и устанавливать новое соединение при восстановлении страницы из bfcache.
Для получения дополнительной информации и примеров кода см. раздел «Изменения в поведении BFCache при работе с портами сообщений расширений» .
Chrome 122: Поддержка промисов в асинхронных API расширений
Опубликовано на
Мы завершили реализацию поддержки Promise для всех асинхронных методов API расширений. Это было сделано для модернизации методов API путем улучшения эргономики работы с асинхронными операциями. Несколько методов (например, desktopCapture.chooseDesktopMedia() ) по-прежнему поддерживают только коллбэки, поскольку их текущие интерфейсы несовместимы с Promise. Для обеспечения обратной совместимости поддержка коллбэков сохраняется. Если вы обнаружите Promise, который не работает, пожалуйста, сообщите об ошибке .
Новые рекомендации по коммуникации в режиме реального времени
Опубликовано на
Мы только что опубликовали руководства по использованию функций обновления в реальном времени в расширениях. Обновления в реальном времени обеспечивают мгновенный канал связи между вашими серверами и установленными расширениями. Кроме того, у нас есть новые рекомендации по использованию chrome.gcm и Web Push .
Новые рекомендации и примеры: увольнение сотрудника службы тестирования.
Опубликовано на
Мы только что опубликовали руководство по тестированию завершения работы сервис-воркера с помощью Puppeteer . Прилагаемый пример демонстрирует это в Puppeteer и Selenium.
Обновленный пример для нативной системы обмена сообщениями.
Опубликовано на
Мы только что опубликовали обновленный пример для нативной системы обмена сообщениями. Этот API позволяет вашему расширению запускаться и взаимодействовать с другим приложением. Благодарим участника GitHub Шубхама-Расала за проделанную работу.
Chrome 121: Новое свойство lastAccessed для tabs.Tab
Опубликовано на
В объект tabs.Tab добавлено новое свойство с именем lastAccessed . Это свойство указывает, когда вкладка была активирована в последний раз. Возвращаемое значение — в миллисекундах с начала эпохи.
Chrome 121: Неподдерживаемые «фоновые» клавиши теперь выдают предупреждение.
Опубликовано на
При переходе от Manifest V2 к Manifest V3 были внесены изменения в дочерние элементы ключа манифеста "background" , чтобы обеспечить замену фоновых скриптов на рабочие процессы служб расширений. Ранее добавление ключей Manifest V2 "scripts" , "page" или "persistent" к ключу "background" расширения Manifest V3 приводило к ошибке. Теперь наличие этих ключей вызывает предупреждение.
Это делается для того, чтобы обеспечить возможность использования одного файла манифеста в расширениях в нескольких браузерах, согласно предложению, выдвинутому в группе сообщества .
Chrome 120: Минимальная точность установки параметров оповещения снижена до 30 секунд.
Опубликовано на
Начиная с Chrome 120, расширения Manifest V3 могут использовать API chrome.alarms с задержками или периодами в 30 секунд, вместо требований к значениям в 60 секунд и более.
Запись в блоге: Возобновление перехода на Manifest V3
Опубликовано на
Обновлен график поддержки Manifest V2. Подробности смотрите в нашем блоге за ноябрь 2023 года .
Запись в блоге: Улучшения в поддержке фильтрации контента в Manifest V3
Опубликовано на
Узнайте о том, как мы улучшили API declarativeNetRequest, в нашей новой статье в блоге .
Запись в блоге: Что нового в Chrome 120 для расширений
Опубликовано на
Недавно вышла бета-версия Chrome 120. Краткий обзор важных обновлений для разработчиков расширений можно найти в нашей новой статье в блоге: Что нового в Chrome 120 для расширений . Этот релиз также знаменует собой важную веху, поскольку он устраняет последние два элемента (userScripts, обработчик файлов в ChromeOS) из списка критических недостатков платформы .
Внимание: Внесены изменения в обработку URL-адресов политик конфиденциальности в панели разработчика.
Опубликовано на
В панели разработчика политики конфиденциальности теперь добавляются на уровне отдельных элементов. Это позволяет задавать разные политики конфиденциальности для каждого элемента. Подробнее об этом изменении читайте в нашем информационном сообщении .
Видео: Беседа с Мэттом Фрисби
Опубликовано на
Мы только что опубликовали новое видео на YouTube-канале Chrome for Developers, в котором беседуем с экспертом Google для разработчиков и автором Мэттом Фрисби. Посмотреть его можно здесь .
Новые рекомендации по тестированию расширений.
Опубликовано на
Мы только что опубликовали новые рекомендации по написанию автоматизированных тестов для расширений, включая инструкции по написанию модульных тестов , а также общие рекомендации и руководство по сквозному тестированию.
Запись в блоге: Что происходит с расширениями Chrome — октябрь 2023 г.
Опубликовано на
Мы только что опубликовали второе издание статьи «Что происходит в расширениях Chrome» . В статье рассказывается о том, над чем работала команда разработчиков расширений в течение последних нескольких месяцев, включая решение проблем со стабильностью сервис-воркеров и успешный прогресс в устранении всех недостатков платформы MV3. Мы также делимся информацией о предстоящих интересных релизах API, таких как API для списков чтения и API для пользовательских скриптов.
Увеличены лимиты статических наборов правил в API декларативных сетевых запросов.
Опубликовано на
На основе отзывов, полученных в группе сообщества Web Extensions, мы значительно увеличиваем лимит на количество включенных статических наборов правил с 10 до 50. Кроме того, мы увеличиваем общее количество разрешенных статических наборов правил с 50 до 100. Эта функция уже доступна в версии Canary.
Улучшены рекомендации по работе с удаленно размещенным кодом.
Опубликовано на
Одно из требований Manifest V3 заключается в том, что расширения больше не могут использовать удаленно размещенный код. Хотя это было частью нашего руководства по миграции с самого начала, мы посчитали целесообразным улучшить рекомендации по этому вопросу. Теперь на этой странице представлена более подробная информация, описывающая, что по-прежнему возможно в Manifest V3, а также стратегии обновления.
В раздел «Устранение нарушений в Chrome Web Store» добавлено новое дополнение. В нём описаны распространённые причины отклонения расширений с удалённо размещённым кодом.
Chrome 118: параметр isUrlFilterCaseSensitive теперь по умолчанию имеет значение false.
Опубликовано на
Начиная с Chrome 118, свойство isUrlFilterCaseSensitive в API chrome.declarativeNetRequest изменено на значение по умолчанию — false . Если вы хотите сохранить старое поведение, вы можете явно установить isUrlFilterCaseSensitive в true в правилах declarativeNetRequest.
Это стало результатом обсуждений в группе сообщества веб-расширений. Firefox и Safari уже внедрили аналогичное изменение.
Документация по файлам cookie и API веб-хранилища
Опубликовано на
Мы опубликовали новое руководство о том , как работают файлы cookie и API веб-хранилища в расширениях Chrome . Оно включает в себя подробную информацию об изменениях в разделении файлов cookie и хранилища в Privacy Sandbox , текущем проекте по отказу от сторонних файлов cookie путем создания ряда новых API веб-платформы, а также подробности о том, как они работают в расширениях.
Образцы расширения теперь можно искать.
Опубликовано на
Недавно мы создали страницу, позволяющую искать примеры расширений Chrome . Страница поиска предлагает несколько вариантов. Поле поиска позволяет искать текст в заголовках примеров. Вы можете ограничить поиск по разрешениям или API расширения. Дополнительный фильтр позволяет ограничить поиск либо примерами API, либо функциональными примерами (вариантами использования).
Эта новая страница-пример была создана участником программы Google Summer of Code, Сюэчжоу Даем, который также предоставил несколько новых примеров. Вы можете прочитать о его опыте этим летом в его публикации в нашем блоге .
Как и прежде, наши примеры кода по-прежнему доступны на GitHub для клонирования или создания форков.
Chrome 118: Изменения в URL-адресах схемы открытия файла.
Опубликовано на
Начиная с Chrome 118, для открытия URL-адресов по схеме file:// с использованием API вкладок или Windows расширениям потребуется включить параметр "Разрешить доступ к URL-адресам файлов" на странице chrome://extensions . Вы можете проверить наличие этого доступа программно, вызвав метод chrome.extension.isAllowedFileSchemeAccess() . Firefox уже ограничивает доступ к URL-адресам файлов, а Safari поддерживает это изменение. Для получения дополнительной информации ознакомьтесь с сообщением в списке рассылки расширений Chrome .
Chrome 117: Расширена защита URL-адресов при навигации по API расширений.
Опубликовано на
Ранее навигация, запускаемая вызовами API расширений для tabs.update() , tabs.create() и windows.create() выдавала ошибку для некоторых URL-адресов chrome://. Кроме того, вызов tabs.update() с использованием URL-адреса JavaScript был запрещен. В версии 117 эти меры защиты для URL-адресов JavaScript были распространены на метод tabs.create() , и в список запрещенных URL-адресов, к которому применяются все упомянутые выше методы, был добавлен ряд дополнительных URL-адресов chrome://.
Улучшены рекомендации по использованию API declarativeNetRequest.
Опубликовано на
API chrome.declarativeNetRequest блокирует или изменяет сетевые запросы, указывая декларативные правила. Это позволяет расширениям изменять сетевые запросы, не перехватывая их и не просматривая их содержимое, тем самым обеспечивая большую конфиденциальность для пользователей. Однако его использование может быть непростым. Учитывая это, мы переписали руководство таким образом, чтобы оно, на наш взгляд, более четко объясняло, как реализовать декларативные наборы правил. Ознакомьтесь с новым разделом по ссылке выше.
Использование вашей учетной записи Google Analytics в Chrome Web Store
Опубликовано на
Chrome Web Store предлагает интеграцию с Google Analytics, что позволяет просматривать аналитику для вашего объявления в Chrome Web Store в дополнение к данным, доступным в панели разработчика. Для получения дополнительной информации ознакомьтесь с разделом «Использование вашей учетной записи Google Analytics с Chrome Web Store» .
Chrome 115: Инструменты разработчика по умолчанию пропускают скрипты контента.
Опубликовано на
Внедренные скрипты контента теперь по умолчанию находятся в списке игнорируемых скриптов в DevTools. Это не влияет на точки останова, но означает, что скрипты контента будут пропускаться во время отладки, а исключения от этих скриптов будут игнорироваться. Когда скрипт контента открыт на вкладке «Источники» , появляется всплывающее окно с предупреждением, если эта функция включена, и возможностью удалить скрипт контента из списка игнорируемых. Чтобы отключить это поведение, откройте DevTools, перейдите в «Настройки» , затем в «Список игнорируемых» . Для получения дополнительной информации см. «Что нового в DevTools» .
Chrome 116 бета: Здесь больше информации, чем мы можем уместить.
Опубликовано на
Chrome 116 — это крупное обновление для расширений. Теперь вы можете открывать боковые панели программно. Новый метод позволяет узнать, есть ли активный документ за пределами экрана. Сервис-воркеры получили несколько улучшений. В версии 116 достаточно улучшений, чтобы мы написали отдельную статью в блоге, посвященную им . Chrome 116 находится в бета-версии с 19 июля.
Запись в блоге: Что происходит с расширениями Chrome
Опубликовано на
Мы только что опубликовали обзор изменений и улучшений расширений за этот год. В статье обсуждаются основные новые функции этого года, включая API боковой панели, улучшения сервис-воркеров и работу с документами вне экрана. Вы также получите представление о том, над чем мы работаем в этом квартале. В статье перечислено гораздо больше информации со ссылками на все разделы.
Новые рекомендации и пример: узнайте, как использовать Google Analytics 4 в расширении для Chrome.
Опубликовано на
Мы опубликовали новые рекомендации и примеры использования Google Analytics и геолокации:
- Обновленная версия нашего руководства по Google Analytics, объясняющая, как использовать Google Analytics 4 в расширении Chrome. Мы также добавили рабочий пример Google Analytics 4 в наш репозиторий примеров на Github. Соответствующий код, относящийся к Google Analytics, можно найти в файле
google-analytics.js. - Новое руководство по геолокации и три примера , демонстрирующие доступ к геолокации в сервисных работниках, скриптах контента, всплывающих окнах и боковых панелях.
Chrome 115: Укажите несколько причин в методе chrome.offscreen.createDocument()
Опубликовано на
Теперь при вызове метода chrome.offscreen.createDocument() можно указывать несколько перечислений reason . Используйте это, если документ, находящийся вне экрана, будет использоваться для разных целей. Браузер использует предоставленные причины для определения времени жизни документа, находящегося вне экрана.
Новый инструмент: Инструмент тестирования обновлений расширений
Опубликовано на
Мы только что выпустили инструмент тестирования обновлений расширений — локальный сервер обновлений расширений, который можно использовать для тестирования обновлений расширений Chrome во время локальной разработки, включая предоставление разрешений. Инструмент показывает процесс обновления пользователем, включая отключение расширения до тех пор, пока пользователь не предоставит запрошенные разрешения. Этот инструмент особенно полезен для имитации изменений разрешений, запрашиваемых при обновлении расширения с Manifest V2 до Manifest V3.
Chrome 114: Новый API для боковой панели
Опубликовано на
Представляем новый API боковой панели — дополнительный интерфейс, позволяющий пользователям получать доступ к инструментам рядом с просматриваемым контентом. Подробнее можно узнать в справочнике по API боковой панели . Кроме того, мы добавили множество примеров боковых панелей в наш репозиторий примеров на GitHub . Более подробную информацию о боковых панелях вы найдете в новой статье блога «Разработка превосходного пользовательского опыта с помощью нового API боковой панели» . Мы также пересмотрели нашу политику качества и лучшие практики , чтобы предоставить дополнительные рекомендации по созданию высококачественных расширений для боковых панелей.
Ваши отзывы важны для разработки этого API; пожалуйста, делитесь своими мыслями и пожеланиями по функциям в группах chromium-groups . Следите за обновлениями, поскольку мы продолжаем улучшать API боковой панели.
Новые примеры: WASM в расширениях
Опубликовано на
Доступны два новых примера, демонстрирующих использование WASM в расширении:
- Использование WASM в Manifest V3 демонстрирует общий метод включения модуля WASM.
- Использование WASM в качестве модуля в Manifest V3 демонстрирует, как его применять в модуле.
Особая благодарность участнику GitHub @daidr за предоставленные примеры.
Обновленные рекомендации по миграции Manifest V3
Опубликовано на
Мы обновили раздел «Известные проблемы» в руководстве по миграции на Manifest V3, добавив обновленный список пробелов в функциональности расширений, которые мы планируем устранить до объявления новых сроков прекращения поддержки Manifest V2.
Запись аудио и видео с помощью Manifest V3
Опубликовано на
Мы только что опубликовали новую статью под названием «Запись звука и захват экрана» , в которой рассматривается запись звука или видео с вкладки, окна или экрана в Manifest V3. В этой статье описаны несколько подходов к записи с использованием API chrome.tabCapture и функции getDisplayMedia() .
Chrome 114: Увеличен объем хранилища.local quota
Опубликовано на
Мы увеличили квоту для свойства storage.local примерно до 10 МБ. Это было согласовано в группе сообщества веб-расширений . Таким образом, storage.local соответствует storage.session , которое было изменено в Chrome 112.
Руководство и помощь по созданию нового сервисного работника расширения
Опубликовано на
Сервис-воркеры являются неотъемлемой частью расширений Chrome. Мы только что опубликовали руководство , объясняющее основы регистрации, отладки и взаимодействия с сервис-воркерами. Мы также добавили новое руководство по сервис-воркерам, в котором более подробно объясняются важные понятия. В ближайшие месяцы мы будем расширять этот раздел.
Дополнительные советы по устранению неполадок, связанных с нарушениями в работе интернет-магазина.
Опубликовано на
Для облегчения публикации расширений в Chrome Web Store мы добавили новые рекомендации в двух разделах. Рекомендации по минимальной функциональности сосредоточены на предоставлении пользователям преимуществ и улучшении их опыта работы в браузере. Рекомендации по партнерской рекламе касаются информирования пользователей о расширениях, использующих партнерские ссылки или коды для монетизации, и предоставления им определенного контроля путем требования от пользователя совершения определенных действий перед включением.
New instructions for the Extension Manifest Converter
Опубликовано на
Мы переписали файл README для конвертера манифестов расширений , чтобы вам было проще понять, что нужно сделать после запуска инструмента. Конвертер помогает мигрировать расширения, созданные на основе Manifest V2, на Manifest V3. Новый файл README описывает работу инструмента, используя слова, максимально приближенные к контрольному списку руководства по миграции . Конвертер не делает всего, но он исключает многие задачи, не требующие участия человека.
Chrome 113: Новые причины для отображения документов вне экрана.
Опубликовано на
В API Offscreen Documents добавлены два новых типа причин . Используйте LOCAL_STORAGE для доступа к API localStorage веб-платформы. Используйте WORKER при создании веб-воркеров.
Google Analytics 4 теперь доступен в панели разработчика.
Опубликовано на
Панель разработчика Chrome Web Store теперь поддерживает Google Analytics 4 (GA4). Мы упростили настройку Google Analytics и сделали управление доступом для групповых издателей более понятным. Если вы ранее использовали Google Universal Analytics для отслеживания активности вашего магазина, вам необходимо принять меры до 1 июля 2023 года, чтобы обеспечить продолжение получения данных о вашем магазине. Для получения дополнительной информации см. сообщение в списке рассылки расширений Chrome .
API для работы с файлами теперь доступен в ChromeOS.
Опубликовано на
API обработки файлов доступен для экспериментов в ChromeOS в версии Canary для версий 112 и 113. Он позволяет расширениям в ChromeOS открывать файлы с указанными MIME-типами и расширениями. Для реализации обработки файлов добавьте набор правил в файл manifest.json . Эта функция работает так же, как и для прогрессивных веб-приложений. Для получения дополнительной информации см. статью на этом сайте.
Для включения обработки файлов:
- Начиная с версии 112, запускайте Chrome, используя флаг
--enable-features=ExtensionWebFileHandlers. - Начиная с версии 113, вставьте
os://flags/#extension-web-file-handlersв адресную строку Chrome и выберите «Включено» в выпадающем меню.
Мы надеемся запустить эту функцию в Chrome 115 в конце июня. Следите за обновлениями.
Новые примеры: динамические объявления и программное внедрение.
Опубликовано на
Мы создали новый пример для API chrome.scripting . Он демонстрирует динамические объявления, когда скрипт содержимого регистрируется во время выполнения, и программное внедрение, когда скрипт выполняется во вкладке, которая уже открыта.
Новые примеры: варианты использования декларативных сетевых запросов.
Опубликовано на
Доступны три новых примера, демонстрирующих API декларативных сетевых запросов . Каждый из них демонстрирует реализацию одного конкретного случая использования. Первый показывает, как блокировать файлы cookie. Два оставшихся демонстрируют блокировку и перенаправление URL-адресов.
Chrome 112: Увеличена квота storage.session
Опубликовано на
Начиная с Chrome 112, квота для свойства storage.session увеличена примерно до 10 МБ. Это было согласовано в группе сообщества веб-расширений: https://github.com/w3c/webextensions/issues/350
Chrome 109: Документы, находящиеся за пределами видимой области экрана
Опубликовано на
В расширениях Manifest V3 теперь доступны документы, отображаемые вне экрана. Они помогают перейти от фоновых страниц к сервисным работникам расширений, обеспечивая поддержку функций и API, связанных с DOM. Для получения дополнительной информации прочитайте статью в блоге .
Chrome 110: Включено ли расширение?
Опубликовано на
Метод chrome.action.isEnabled() программно проверяет, включено ли расширение для конкретной вкладки. Это избавляет вас от необходимости постоянно отслеживать состояние включенных вкладок. Этот новый метод принимает идентификатор вкладки и ссылку на функцию обратного вызова и возвращает логическое значение. У него есть одно ограничение: вкладки, созданные с помощью chrome.declarativeContent всегда возвращают false.
(В пространстве имен chrome.action недавно появились новые методы для управления внешним видом значков расширений. Дополнительную информацию см. в разделе «Настройка цветов значков» .)
Chrome 110: Изменение таймаута простоя сервис-воркера
Опубликовано на
Ранее служба поддержки часто отключалась через пять минут. Мы изменили это поведение, чтобы оно больше соответствовало времени жизни служб поддержки в веб-версии. Служба поддержки будет отключена либо через тридцать секунд бездействия, либо если обработка одного действия занимает более 5 минут. Для получения дополнительной информации см. раздел «Увеличение времени жизни служб поддержки» .
Сообщение: Приостановка поэтапного вывода из эксплуатации Manifest V2
Опубликовано на
Сроки прекращения поддержки Manifest V2 пересматриваются, а эксперименты, запланированные на начало 2023 года, откладываются. Для получения дополнительной информации ознакомьтесь с обновлением в списке рассылки расширений Chrome.
Chrome 110: Настройка цветов значка
Опубликовано на
В пространстве имен chrome.action появились два новых метода, которые позволяют более эффективно управлять внешним видом значков расширений. Методы setBadgeTextColor() и getBadgeTextColor() позволяют расширению изменять и запрашивать цвет текста значка на панели инструментов. При использовании вместе с setBadgeBackgroundColor и getBadgeBackgroundColor эти новые методы позволяют обеспечить единообразие дизайна и фирменного стиля.
Запись в блоге: Подробнее о переходе на Manifest V3
Опубликовано на
Мы уточнили сроки прекращения поддержки Manifest V2 . Сроки поддержки Manifest V2 также были обновлены с учетом этой информации.
Обновление документации: Известные проблемы при миграции на Manifest V3.
Опубликовано на
Мы составили список основных функций, находящихся в разработке, и открытых ошибок . Цель этой страницы — помочь разработчикам лучше понять текущее состояние платформы и определить, какие функции они могут использовать при подготовке к будущему.
Chrome Web Store: изображение "большой рекламной плитки" удалено.
Опубликовано на
В Chrome Web Store удален интерфейс загрузки «больших рекламных изображений» из вкладки «Список товаров» в панели разработчика. Это изменение не влияет на пользовательский опыт, поскольку эти изображения не использовались в пользовательском интерфейсе. Дополнительные сведения см. в этой публикации chromium-extensions.
Chrome 106: Разрешить страницам с URL-адресами типа file:// доступ к веб-ресурсам.
Опубликовано на
Согласно crbug.com/1219825#c11 , непрозрачные источники, такие как изолированные iframe и динамический импорт, также должны иметь возможность доступа к веб-ресурсам.
Chrome 106: Исправлена ошибка, допускавшая некорректные финальные аргументы в некоторых асинхронных функциях API.
Опубликовано на
Ранее в Manifest V3 при вызове асинхронных API можно было указать недопустимый final-аргумент, и Chrome не выдавал ошибку. Благодаря этому исправлению Chrome теперь будет корректно выдавать ошибку и сообщать об отсутствии соответствующей сигнатуры. Разработчикам рекомендуется проверять свои расширения на Canary на наличие ошибок, чтобы избежать случайного использования неправильной сигнатуры для вызова API, который будет нарушен этим исправлением.
Запись в блоге: Обновление аналитики Chrome Web Store
Опубликовано на
В Chrome Web Store обновлен интерфейс аналитики товаров для панели разработчика Chrome Web Store. Новая панель стала более понятной с первого взгляда и объединяет наиболее полезную информацию в одном месте. Подробнее читайте в статье блога .
Chrome 105: обещания для Identity API
Опубликовано на
Функции в Identity API теперь поддерживают вызовы на основе промисов. Это сопровождается небольшим изменением в реализации identity.getAuthToken() , где асинхронный возвращаемый результат, установленный для вызова на основе промиса, будет содержать параметры "token" и "grantedScopes" в одном объекте (в отличие от версии с обратным вызовом, получающей их в качестве отдельных аргументов).
Chrome 104: Новый API для значков избранного (favicon) в Manifest V3
Опубликовано на
Расширения Manifest V3 теперь могут получать доступ к значкам сайтов (favicon) с помощью нового шаблона URL: chrome-extension://<id>/_favicon/ , гдеchrome://favicons платформы Manifest V2. Дополнительную информацию см. в документации по API Favicon .
Обновление документации: раскрытие информации о трейдерах/нетрейдерах, участвующих в разработке.
Опубликовано на
Добавлена идентификация разработчика как трейдера/не трейдера , которая позволяет разработчикам точно указывать свой статус трейдера/не трейдера.
Chrome 103: Wasm в Manifest V3 требует wasm-unsafe-eval
Опубликовано на
Chrome больше не предоставляет расширениям script-src: wasm-unsafe-eval по умолчанию. Расширения, использующие WebAssembly, теперь должны явно добавлять эту директиву и значение в extension_pages в своих объявлениях content_security_policy .
Chrome 103: Изменения в сочетаниях клавиш MV3 вступают в силу немедленно.
Опубликовано на
При изменении сочетания клавиш для расширения Manifest V3 в chrome://extensions/shortcuts обновления теперь применяются немедленно. Ранее для вступления изменений в силу требовалась перезагрузка расширения.
Chrome 102: Скрипты динамического контента в основной среде
Опубликовано на
Теперь динамически регистрируемые скрипты контента могут указывать мир , в который будут внедряться ресурсы. Подробнее см. scripting.registerContentScripts() .
Chrome 102: Новое поле манифеста "optional_host_permissions"
Опубликовано на
Расширения Manifest V3 теперь могут указывать ключ optional_host_permissions в файле manifest.json. Это позволяет расширениям Manifest V3 объявлять необязательные шаблоны соответствия для хостов так же, как это могли делать расширения Manifest V2, используя ключ optional_permissions .
Chrome 102: свойство injectImmediately в методе scripting.executeScript()
Опубликовано на
chrome.scripting.executeScript() теперь принимает необязательное свойство injectImmediately в качестве аргумента injection . Если оно присутствует и установлено в значение true, скрипт будет внедрен в целевой объект как можно скорее, а не ждать завершения document_idle . Обратите внимание, что это не гарантирует внедрение скрипта до загрузки страницы, поскольку страница продолжает загружаться во время выполнения вызова API.
Chrome 102: поддержка API омнибокса в манифесте V3
Опубликовано на
Теперь API Omnibox можно использовать в расширениях на основе сервис-воркеров. Ранее некоторые методы этого API вызывали исключение при вызове из-за внутренних зависимостей от возможностей DOM.
Chrome 102: wasm-unsafe-eval разрешен в Manifest V3 CSP
Опубликовано на
Расширения Manifest V3 теперь могут включать wasm-unsafe-eval в свои объявления content_security_policy . Это изменение позволяет расширениям Manifest V3 использовать WebAssembly.
Chrome 102: Новый API storage.session
Опубликовано на
Расширения Manifest V3 теперь могут использовать хранилище в памяти storage.session .
Обновление документации: обнаружение товаров в Chrome Web Store.
Опубликовано на
Раздел «Поиск товаров в Chrome Web Store» дает представление о том, как пользователи находят товары в Chrome Web Store и как наши редакторы отбирают товары для размещения в разделе «Рекомендации».
Chrome 101: Улучшены условия домена declarativeNetRequest.
Опубликовано на
declarativeNetRequest rule conditions have been updated to allow extensions to better target requests based on the request's "request" and "initiator" domains. The relevant condition properties are initiatorDomains , excludedInitiatorDomains , requestDomains , and excludedRequestDomains . See also this chromium-extensions thread .
Chrome 100: Исправлена проблема с вызовом scripting.executeScript() на новых вкладках.
Fixed a longstanding issue where calling scripting.executeScript() on a newly created tab or window could fail.
Chrome 100: собственный порт для обмена сообщениями поддерживает работу сервис-воркера.
Опубликовано на
Connecting to a native messaging host using chrome.runtime.connectNative() in an extension's service worker should keep the service worker alive as long as the port is open.
Chrome 100: omnibox.setDefaultSuggestion() поддерживает промисы и коллбэки.
Опубликовано на
The omnibox.setDefaultSuggestion() method now returns a promise or accepts a callback to allow developers to determine when the suggestion has been properly set.
Chrome 100: поддержка i18n.getMessage() в рабочих процессах служб расширений.
Опубликовано на
The chrome.i18n.getMessage() API is now supported in extension service worker contexts.
Chrome 99: match_origin_as_fallback в Canary
Опубликовано на
Content scripts can now specify the match_origin_as_fallback key to inject into frames that are related to a matching frame, including frames with about: , data: , blob: , and filesystem: URLs. See the content scripts documentation for details.
Chrome 99: поддержка рабочих процессов расширений для схем file: в Canary.
Опубликовано на
Service worker-based Manifest V2 and Manifest V3 extensions can now use the Fetch API to request file: -scheme URLs. Access to file: -scheme URLs still requires that the user enable 'Allow access to File URLs' for the extension in the chrome://extensions page.
Chrome 99: обещана поддержка API обмена сообщениями в Canary.
Опубликовано на
Promise support has been added to tabs.sendMessage , runtime.sendMessage , and runtime.sendNativeMessage for extensions built for Manifest V3.
Обновление документации: Документация по проверке в Chrome Web Store
Опубликовано на
Added a new reference page that provides an overview of the Chrome Web Store review process and explains how developer program policy enforcement is handled.
Chrome 98: методы scripting.executeScript() и scripting.insertCSS() принимают несколько файлов.
Опубликовано на
The Scripting API's executeScript() and insertCSS() methods now accept multiple files. Previously these methods required an array with a single file entry.
Обновление документации: обновления по устранению неполадок, связанных с нарушениями при проверке.
Опубликовано на
The Troubleshooting Chrome Web Store violations page has been updated to provide developers with more detailed guidance for common reasons for rejection.
Chrome 96: расширена поддержка промисов еще для 27 API.
Опубликовано на
This release contains significantly more promise updates than any previous release. Updates include both general and ChromeOS-specific extensions APIs. Expand the following sections for details.
API расширений
В Manifest V3 ряд API теперь поддерживают промисы.
-
chrome.browsingData -
chrome.commands -
chrome.contentSettings -
chrome.debugger -
chrome.downloads -
chrome.enterprise.hardwarePlatform -
chrome.fontSettings -
chrome.history -
chrome.instanceID -
chrome.permissions -
chrome.processes -
chrome.search -
chrome.sessions -
chrome.topSites
Also, APIs that use the ChromeSetting prototype now also support promises. The following APIs are affected by this change.
API ChromeOS
-
chrome.certificateProvider -
chrome.documentScan -
chrome.enterprise.deviceAttributes -
chrome.enterprise.networkingAttributes -
chrome.fileBrowserHandler -
chrome.fileSystemProvider -
chrome.loginState -
chrome.printingMetrics -
chrome.wallpaper
Chrome 96: скрипты динамического контента
Опубликовано на
The chrome.scripting API now supports registering , updating , unregistering , and getting a list of content scripts at runtime. Previously, content scripts could only be statically declared in an extension's manifest.json or programmatically injected at runtime with chrome.scripting.executeScript() .
Обновление документации: сроки поддержки Manifest V2.
Опубликовано на
The Manifest V2 to V3 transition timeline was announced in this blog post and a more detailed timeline page was published.
Chrome 96: разрешение declarativeNetRequestWithHostAccess
Опубликовано на
The new declarativeNetRequestWithHostAccess permission allows extensions to use the chrome.declarativeNetRequest API on sites the extension has host permissions for. This also enables existing Manifest V2 extensions that use webRequest , webRequestBlocking , and site-specific host permission to migrate to the chrome.declarativeNetRequest API without requiring the user to approve new permissions.
Chrome 95: внедрение скриптов непосредственно в страницы.
Опубликовано на
The chrome.scripting API's executeScript() method can now inject scripts directly into a page's main world. Previously, extensions could only inject directly into the extension's isolated world. For more information on isolated worlds, see the documentation on content scripts .
Chrome 95: обещана поддержка API хранилища.
Опубликовано на
Methods on the Manifest V3 version of the chrome.storage API now return promises.
Обновление политики: внедрение двухфакторной аутентификации.
Опубликовано на
The policy update blog post published on June 29, 2021 has been updated to correct the two step verification deployment timeline.
Chrome 94: изменения в статическом наборе правил декларативных сетевых запросов
Опубликовано на
The chrome.declarativeNetRequest now supports specifying up to 50 static rulesets ( MAX_NUMBER_OF_STATIC_RULESETS ) and enabling up to 10 rulesets ( MAX_NUMBER_OF_ENABLED_STATIC_RULESETS ) at a time.
Chrome 93: поддержка изоляции между источниками
Опубликовано на
Both Manifest V2 and Manifest V3 extensions can now opt into cross origin isolation . This feature limits which cross-origin resources can load an extension's pages and enables the use of low level web platform features like SharedArrayBuffer . Opt in will be required starting in Chrome 95.
Обновление политики: обновлены правила программы для разработчиков.
Опубликовано на
The Chrome Web Store Developer Program Policies have been updated with clarifications to the deceptive installation tactics, spam, and repetitive content policies. This update also includes a new two step verification requirement to publish on the Chrome Web Store. Read the blog post for more information.
Запись в блоге: действия расширения в Manifest V3
Опубликовано на
Chrome extensions had chrome.browserAction and chrome.pageActions APIs for years, but Manifest V3 replaced both with a generic chrome.actions API. This post explores the history of these APIs and what has changed in Manifest V3. Read the post .
Статья в блоге: знакомство с chrome.scripting
Опубликовано на
The chrome.scripting API is a new Manifest V3 API focused on, well, scripting. In this post we dig into the motivations for this change and take a closer look at its new capabilities. Read the post .
Chrome 92: поддержка модульных сервисных рабочих процессов
Опубликовано на
Chrome now supports JavaScript modules in service workers. To specify a module a module in your manifest:
"background": {
"service_worker": "script.js",
"type": "module"
}
This loads the worker script as an ES module, which lets you use the import keyword in the worker's script to import other modules.
Chrome 91: chrome.action.getUserSettings()
Опубликовано на
The new chrome.action.getUserSettings() method allows extensions to determine if the user has pinned the extension to the main toolbar.
Chrome 90: chrome.scripting.removeCSS()
Опубликовано на
The new chrome.scripting.removeCSS() method allows extensions to remove CSS that was previously inserted via chrome.scripting.insertCSS() . It replaces chrome.tabs.removeCSS() .
Chrome 90: возврат промисов из scripting.executeScript()
Опубликовано на
chrome.scripting.executeScript() now supports returning promises. If the resulting value of the script execution is a promise, Chrome will wait for the promise to settle and return its resulting value.
Chrome 90: результаты chrome.scripting.executeScript() включают frameId
Опубликовано на
Results returned from chrome.scripting.executeScript() now include the frameId . The frameId property indicates the frame that the result is from, letting extensions easily associate results with the individual frames when injecting in multiple frames.
Chrome 89: новый API для управления группами вкладок
Опубликовано на
The new chrome.tabGroups API and new capabilities in chrome.tabs let extensions read and manipulate tab groups. Requires Manifest V3.
Chrome 89: настраиваемые разрешения для веб-ресурсов.
Опубликовано на
В Manifest V3 внесены изменения в определения веб-доступных ресурсов , позволяющие расширениям ограничивать доступ к ресурсам на основе идентификатора источника запроса или идентификатора расширения.
Запись в блоге: Конвертер манифестов расширений
Опубликовано на
Команда разработчиков расширений Chrome открыла исходный код инструмента на Python "Extension Manifest Converter", который автоматизирует некоторые механические аспекты преобразования расширений в Manifest V3. Подробнее об этом можно узнать в блоге и скачать на GitHub .
Chrome 88: Манифест V3 доступен для общего использования.
Опубликовано на
Manifest V3 — это крупное обновление платформы расширений; краткое описание новых и измененных функций см. в разделе «Обзор Manifest V3» . Расширения могут пока продолжать использовать Manifest V2, но в ближайшем будущем он будет выведен из эксплуатации. Мы настоятельно рекомендуем использовать Manifest V3 для всех новых расширений и начать миграцию существующих расширений на Manifest V3 как можно скорее.