Уведомления
Уведомления позволяют вам передавать информацию пользователям вашего расширения через службу уведомлений в операционной системе.
Уведомления могут включать в себя призывы к выполнению каких-либо действий, а ваше расширение может обрабатывать события закрытия или нажатия на уведомления.
Управление уведомлениями
Управление уведомлениями происходит программным путём с помощью notifications
API. Для использования этого API вы должны иметь notifications
полномочия в manifest.json:
"permissions": ["notifications"]
После этого вы можете использовать notifications.create
для создания ваших уведомлений, как, например, в нижеприведённом коде, взятом из notify-link-clicks-i18n:
var title = browser.i18n.getMessage("notificationTitle");
var content = browser.i18n.getMessage("notificationContent", message.url);
browser.notifications.create({
type: "basic",
iconUrl: browser.extension.getURL("icons/link-48.png"),
title: title,
message: content,
});
Этот код создаёт уведомление с иконкой, заголовком и сообщением.
Если уведомление имеет цель призвать пользователя к какому-либо действию, вы можете установить обработчик события на нажатия на уведомления:
browser.notifications.onClicked.addListener(handleClick);
Если вы собираетесь призывать пользователей к действиям с помощью уведомлений, вам так же будет полезно определять id
этих уведомлений, для того чтобы вы в дальнейшем имели возможность различать на какое конкретно уведомление было произведено нажатие.
Иконки
Смотрите статью Iconography в документации Photon Design System для получения информации по созданию иконок для уведомлений.
Примеры
Репозиторий образцов расширений webextensions-examples на GitHub включает в себя расширение notify-link-clicks-i18n, которое реализует систему уведомлений.