хром.менеджмент

Описание

API chrome.management предоставляет способы управления списком расширений и приложений, которые установлены и запущены. Это особенно полезно для расширений, которые переопределяют встроенную страницу новой вкладки.

Разрешения

management

Чтобы использовать API управления, необходимо объявить разрешение «управление» в манифесте расширения . Например:

{
  "name": "My extension",
  ...
  "permissions": [
    "management"
  ],
  ...
}

management.getPermissionWarningsByManifest() , management.uninstallSelf() и management.getSelf() не требуют разрешения на управление.

Типы

ExtensionDisabledReason

Хром 44+

Причина, по которой элемент отключен.

Перечисление

"неизвестный"

"permissions_increase"

ExtensionInfo

Информация об установленном расширении, приложении или теме.

Характеристики

  • appLaunchUrl

    строка необязательна

    URL-адрес запуска (присутствует только для приложений).

  • доступные типы запуска

    Тип запуска [] необязательно

    Доступные на данный момент типы запуска (присутствуют только для приложений).

  • описание

    нить

    Описание этого расширения, приложения или темы.

  • отключеноПричина

    ExtensionDisabledReason необязательно

    Причина, по которой элемент отключен.

  • включено

    логическое значение

    Включена ли она в данный момент или отключена.

  • URL-адрес домашней страницы

    строка необязательна

    URL-адрес домашней страницы этого расширения, приложения или темы.

  • разрешения хоста

    нить[]

    Возвращает список разрешений на основе хоста.

  • значки

    IconInfo [] необязательно

    Список информации о значках. Обратите внимание, что это просто отражает то, что было объявлено в манифесте, и фактическое изображение по этому URL-адресу может быть больше или меньше объявленного, поэтому вы можете рассмотреть возможность использования явных атрибутов ширины и высоты в тегах img, ссылающихся на эти изображения. Дополнительные сведения см. в документации манифеста по значкам .

  • идентификатор

    нить

    Уникальный идентификатор расширения.

  • тип установки

    Как было установлено расширение.

  • isApp

    логическое значение

    Устарело

    Пожалуйста, используйте management.ExtensionInfo.type .

    Верно, если это приложение.

  • тип запуска

    Тип запуска необязательно

    Тип запуска приложения (присутствует только для приложений).

  • может отключить

    логическое значение

    Может ли это расширение быть отключено или удалено пользователем.

  • mayEnable

    логическое значение необязательно

    Хром 62+

    Может ли это расширение быть включено пользователем. Это возвращается только для расширений, которые не включены.

  • имя

    нить

    Название этого расширения, приложения или темы.

  • офлайнВключено

    логическое значение

    Заявлено ли расширение, приложение или тема о поддержке автономного режима.

  • параметрыURL

    нить

    URL-адрес страницы параметров элемента, если она есть.

  • разрешения

    нить[]

    Возвращает список разрешений на основе API.

  • короткое имя

    нить

    Краткая версия названия этого расширения, приложения или темы.

  • Тип этого расширения, приложения или темы.

  • обновить URL

    строка необязательна

    URL-адрес обновления этого расширения, приложения или темы.

  • версия

    нить

    Версия этого расширения, приложения или темы.

  • имя_версии

    строка необязательна

    Хром 50+

    Имя версии этого расширения, приложения или темы, если оно указано в манифесте.

ExtensionInstallType

Хром 44+

Как было установлено расширение. Один из admin : расширение было установлено в соответствии с административной политикой, development : расширение было загружено в распакованном виде в режиме разработчика, normal : расширение было установлено обычным образом через файл .crx, sideload : расширение было установлено другим программным обеспечением на компьютере. , other : расширение было установлено другим способом.

Перечисление

"админ"

"разработка"

"нормальный"

"боковая загрузка"

"другой"

ExtensionType

Хром 44+

Тип этого расширения, приложения или темы.

Перечисление

"расширение"

"hosted_app"

"packaged_app"

"legacy_packaged_app"

"тема"

"login_screen_extension"

IconInfo

Информация о значке, принадлежащем расширению, приложению или теме.

Характеристики

  • размер

    число

    Число, обозначающее ширину и высоту значка. Вероятные значения включают (но не ограничиваются ими) 128, 48, 24 и 16.

  • URL

    нить

    URL-адрес этого изображения значка. Чтобы отобразить версию значка в оттенках серого (например, чтобы указать, что расширение отключено), добавьте ?grayscale=true к URL-адресу.

LaunchType

Это все возможные типы запуска приложений.

Перечисление

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

"ОТКРЫТЬ_AS_WINDOW"

"ОТКРЫТЫЙ_ПОЛНЫЙ_ЭКРАН"

UninstallOptions

Хром 88+

Варианты действий при удалении расширения.

Характеристики

  • показатьConfirmDialog

    логическое значение необязательно

    Следует ли пользователю запрашивать диалоговое окно подтверждения-удаления. По умолчанию значение false для самостоятельного удаления. Если расширение удаляет другое расширение, этот параметр игнорируется, и диалоговое окно отображается всегда.

Методы

createAppShortcut()

Обещать
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)

Параметры отображения для создания ярлыков для приложения. На Mac можно создавать только ярлыки упакованных приложений.

Параметры

  • идентификатор

    нить

    Это должен быть идентификатор из элемента управления management.ExtensionInfo .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

Обещать
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)

Создайте приложение для URL-адреса. Возвращает сгенерированное приложение-закладку.

Параметры

  • нить

    URL-адрес веб-страницы. Схема URL может быть только «http» или «https».

  • нить

    Название созданного приложения.

  • функция необязательна

    Параметр callback выглядит так:

    (result: ExtensionInfo)=>void

Возврат

  • Обещание <ExtensionInfo>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

get()

Обещать
chrome.management.get(
  id: string,
  callback?: function,
)

Возвращает информацию об установленном расширении, приложении или теме с заданным идентификатором.

Параметры

Возврат

  • Обещание <ExtensionInfo>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getAll()

Обещать
chrome.management.getAll(
  callback?: function,
)

Возвращает список информации об установленных расширениях и приложениях.

Параметры

Возврат

  • Обещание< ExtensionInfo []>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getPermissionWarningsById()

Обещать
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)

Возвращает список предупреждений о разрешениях для данного идентификатора расширения.

Параметры

  • идентификатор

    нить

    Идентификатор уже установленного расширения.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (permissionWarnings: string[])=>void

    • разрешениеПредупреждения

      нить[]

Возврат

  • Обещание<string[]>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getPermissionWarningsByManifest()

Обещать
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)

Возвращает список предупреждений о разрешениях для данной строки манифеста расширения. Примечание. Эту функцию можно использовать без запроса разрешения на управление в манифесте.

Параметры

  • манифестStr

    нить

    Строка JSON манифеста расширения.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (permissionWarnings: string[])=>void

    • разрешениеПредупреждения

      нить[]

Возврат

  • Обещание<string[]>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getSelf()

Обещать
chrome.management.getSelf(
  callback?: function,
)

Возвращает информацию о вызывающем расширении, приложении или теме. Примечание. Эту функцию можно использовать без запроса разрешения на управление в манифесте.

Параметры

Возврат

  • Обещание <ExtensionInfo>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

installReplacementWebApp()

Обещание Chrome 77+
chrome.management.installReplacementWebApp(
  callback?: function,
)

Запускает replace_web_app, указанный в манифесте. Предлагает пользователю установить программу, если она еще не установлена.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

launchApp()

Обещать
chrome.management.launchApp(
  id: string,
  callback?: function,
)

Запускает приложение.

Параметры

  • идентификатор

    нить

    Идентификатор расширения приложения.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

setEnabled()

Обещать
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)

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

Параметры

  • идентификатор

    нить

    Это должен быть идентификатор элемента management.ExtensionInfo .

  • включено

    логическое значение

    Должен ли этот элемент быть включен или отключен.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

setLaunchType()

Обещать
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)

Установите тип запуска приложения.

Параметры

  • идентификатор

    нить

    Это должен быть идентификатор из элемента управления management.ExtensionInfo .

  • тип запуска

    Целевой тип запуска. Всегда проверяйте и убедитесь, что этот тип запуска указан в ExtensionInfo.availableLaunchTypes , поскольку доступные типы запуска различаются на разных платформах и конфигурациях.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

uninstall()

Обещать
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)

Удаляет установленное в данный момент приложение или расширение. Примечание. Эта функция не работает в управляемых средах, если пользователю не разрешено удалять указанное расширение/приложение. Если удаление не удалось (например, пользователь отменяет диалог), обещание будет отклонено или будет вызван обратный вызов с установленным runtime.lastError .

Параметры

  • идентификатор

    нить

    Это должен быть идентификатор элемента management.ExtensionInfo .

  • параметры

    UninstallOptions необязательно

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

uninstallSelf()

Обещать
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)

Удаляет вызывающее расширение. Примечание. Эту функцию можно использовать без запроса разрешения на управление в манифесте. Эта функция не работает в управляемых средах, если пользователю не разрешено удалять указанное расширение или приложение.

Параметры

  • параметры

    UninstallOptions необязательно

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    ()=>void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

События

onDisabled

chrome.management.onDisabled.addListener(
  callback: function,
)

Запускается, когда приложение или расширение отключено.

Параметры

onEnabled

chrome.management.onEnabled.addListener(
  callback: function,
)

Запускается, когда приложение или расширение включено.

Параметры

onInstalled

chrome.management.onInstalled.addListener(
  callback: function,
)

Запускается, когда приложение или расширение установлено.

Параметры

onUninstalled

chrome.management.onUninstalled.addListener(
  callback: function,
)

Запускается, когда приложение или расширение было удалено.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (id: string)=>void

    • идентификатор

      нить