Расширение Chrome: закрыть фоновую страницу после закрытия Chrome

У меня есть расширение с фоновой страницей, и по умолчанию это заставляет Chrome сохраняться после закрытия всех окон и помещает значок Chrome в системный трей. Я хотел бы избежать этого - я не хочу, чтобы мое расширение сохраняло процесс Chrome после закрытия всех окон Chrome, и при этом я не хочу, чтобы Chrome появлялся в systray.

Согласно единственным документам, которые я смог найти, это означает, что пользователь может установить эту опцию глобально для всех расширений, но это не то, что я пытаюсь сделать. Мне бы хотелось, чтобы расширение было непритязательным / ненавязчивым, и я не хочу менять поведение браузера пользователя. Кто-нибудь знает, как этого добиться, сохранив при этом возможность иметь фоновую страницу?

1 ответ

Решение

ОБНОВИТЬ

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

Пример из документа на страницах событий по настройке непостоянного сценария события в манифесте:

{
  "name": "My extension",
  ...
  "background": {
    "scripts": ["eventPage.js"],
    "persistent": false
  },
  ...
}

Вот руководство по миграции расширения Chrome до версии 2.


СТАРЫЙ ОТВЕТ

В настоящее время, если ваше расширение имеет фон, определенный в файле manifest.json, оно будет запущено до запуска Chrome и продолжит работу после закрытия всех окон Chrome. Это если пользователь не изменит свои настройки, как вы упомянули. Возможно, в будущих версиях Google Chrome будут использоваться другие функции, но вы, разработчик, не сможете обойти эту проблему в настоящее время.

Выдержка из справочного документа

Позволяет запускать Chrome рано и поздно выключаться, чтобы приложения и расширения могли работать дольше.

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

Другие вопросы по тегам