Opis
Za pomocą interfejsu chrome.notifications API możesz tworzyć rozbudowane powiadomienia przy użyciu szablonów i wyświetlać je użytkownikom na pasku systemowym.
Uprawnienia
notificationsTypy
NotificationBitmap
NotificationButton
Właściwości
-
iconUrl
ciąg znaków opcjonalny
Wycofane w Chrome 59Ikony przycisków nie są widoczne dla użytkowników systemu Mac OS X.
-
tytuł
ciąg znaków
NotificationItem
Właściwości
-
wiadomość
ciąg znaków
Dodatkowe informacje o tym produkcie.
-
tytuł
ciąg znaków
Tytuł jednego elementu powiadomienia z listą.
NotificationOptions
Właściwości
-
appIconMaskUrl
ciąg znaków opcjonalny
Wycofane w Chrome 59Maska ikony aplikacji nie jest widoczna dla użytkowników systemu Mac OS X.
Adres URL maski ikony aplikacji. Adresy URL podlegają tym samym ograniczeniom co parametr iconUrl.
Maska ikony aplikacji powinna znajdować się w kanale alfa, ponieważ pod uwagę będzie brany tylko kanał alfa obrazu.
-
przyciski,
NotificationButton[] optional
Tekst i ikony maksymalnie 2 przycisków działań w powiadomieniu.
-
contextMessage
ciąg znaków opcjonalny
Alternatywna treść powiadomienia z czcionką o mniejszej wadze.
-
eventTime
number opcjonalny
Sygnatura czasowa powiązana z powiadomieniem, w milisekundach od początku epoki (np.
Date.now() + n). -
iconUrl
ciąg znaków opcjonalny
Adres URL awatara nadawcy, ikony aplikacji lub miniatury obrazu w przypadku powiadomień z obrazem.
Adresy URL mogą być adresami URL danych, adresami URL obiektów blob lub adresami URL względnymi w stosunku do zasobu w pliku CRX tego rozszerzenia.
** Uwaga: ta wartość jest wymagana w przypadku metody
notifications.create(). -
imageUrl
ciąg znaków opcjonalny
Wycofane w Chrome 59Obraz nie jest widoczny dla użytkowników systemu Mac OS X.
Adres URL miniatury obrazu w przypadku powiadomień typu obraz. Adresy URL podlegają tym samym ograniczeniom co parametr iconUrl.
-
isClickable
wartość logiczna opcjonalna
Wycofane w Chrome 67Ten podpowiedź interfejsu jest ignorowana od Chrome 67.
-
elementy
NotificationItem[] opcjonalnie
Elementy powiadomień dotyczących wielu produktów. Użytkownicy systemu Mac OS X widzą tylko pierwszy element.
-
wiadomość
ciąg znaków opcjonalny
Główna treść powiadomienia.
** Uwaga: ta wartość jest wymagana w przypadku metody
notifications.create(). -
kampanii
number opcjonalny
Priorytet może mieć wartość od -2 do 2. -2 to najniższy priorytet. 2 to najwyższy poziom. Wartość domyślna to 0. Na platformach, które nie obsługują centrum powiadomień (Windows, Linux i Mac), wartości –2 i –1 powodują błąd, ponieważ powiadomienia o tych priorytetach nie będą w ogóle wyświetlane.
-
postęp
number opcjonalny
Aktualny postęp może wynosić od 0 do 100.
-
requireInteraction
wartość logiczna opcjonalna
Chrome w wersji 50 lub nowszejWskazuje, że powiadomienie powinno być widoczne na ekranie, dopóki użytkownik go nie aktywuje lub nie zamknie. Domyślnie ma wartość fałsz.
-
cichy
wartość logiczna opcjonalna
Chrome w wersji 70 lub nowszejWskazuje, że podczas wyświetlania powiadomienia nie powinny być odtwarzane żadne dźwięki ani wibracje. Domyślnie ma wartość fałsz.
-
tytuł
ciąg znaków opcjonalny
Tytuł powiadomienia (np. nazwa nadawcy w przypadku e-maila).
** Uwaga: ta wartość jest wymagana w przypadku metody
notifications.create(). -
typ
TemplateType opcjonalny
Typ powiadomienia do wyświetlenia. Wymagane w przypadku metody
notifications.create.
PermissionLevel
Typ wyliczeniowy
„granted”
Oznacza, że użytkownik wybrał opcję wyświetlania powiadomień z aplikacji lub rozszerzenia. Jest to ustawienie domyślne w momencie instalacji.
„denied”
Określa, że użytkownik nie chce wyświetlać powiadomień z aplikacji lub rozszerzenia.
TemplateType
Typ wyliczeniowy
„basic”
Zawiera ikonę, tytuł, wiadomość, rozwiniętą wiadomość i maksymalnie 2 przyciski.
„image”
Zawiera ikonę, tytuł, wiadomość, expandedMessage, obraz i maksymalnie 2 przyciski.
„list”
Zawiera ikonę, tytuł, wiadomość, elementy i maksymalnie 2 przyciski. Użytkownicy systemu Mac OS X widzą tylko pierwszy element.
„progress”
Zawiera ikonę, tytuł, wiadomość, postęp i maksymalnie 2 przyciski.
Metody
clear()
chrome.notifications.clear(
notificationId: string,
): Promise<boolean>
Usuwa wskazane powiadomienie.
Parametry
-
notificationId
ciąg znaków
Identyfikator powiadomienia do usunięcia. Jest on zwracany przez metodę
notifications.create.
Zwroty
-
Promise<boolean>
Chrome 116 lub nowszaZwraca obiekt Promise, który po rozwiązaniu wskazuje, czy istniało pasujące powiadomienie.
create()
chrome.notifications.create(
notificationId?: string,
options: NotificationOptions,
): Promise<string>
Tworzy i wyświetla powiadomienie.
Parametry
-
notificationId
ciąg znaków opcjonalny
Identyfikator powiadomienia. Jeśli to pole nie jest ustawione lub jest puste, identyfikator zostanie wygenerowany automatycznie. Jeśli pasuje do istniejącego powiadomienia, ta metoda najpierw usuwa to powiadomienie, a potem wykonuje operację tworzenia. Identyfikator nie może mieć więcej niż 500 znaków.
Parametr
notificationIdjest wymagany w wersjach Chrome starszych niż 42. -
Opcje
Treść powiadomienia.
Zwroty
-
Promise<string>
Chrome 116 lub nowszaZwraca obiekt Promise, który jest rozwiązywany z identyfikatorem powiadomienia (dostarczonym lub wygenerowanym) reprezentującym utworzone powiadomienie.
getAll()
chrome.notifications.getAll(): Promise<object>
Pobiera wszystkie powiadomienia z tej aplikacji lub rozszerzenia.
Zwroty
-
Promise<object>
Chrome 116 lub nowszaZwraca obiekt Promise, który jest rozwiązywany z zestawem identyfikatorów powiadomień znajdujących się obecnie w systemie.
getPermissionLevel()
chrome.notifications.getPermissionLevel(): Promise<PermissionLevel>
Sprawdza, czy użytkownik włączył powiadomienia z tej aplikacji lub rozszerzenia.
Zwroty
-
Promise<PermissionLevel>
Chrome 116 lub nowszaZwraca obiekt Promise, który jest rozwiązywany z bieżącym poziomem uprawnień.
update()
chrome.notifications.update(
notificationId: string,
options: NotificationOptions,
): Promise<boolean>
Aktualizuje istniejące powiadomienie.
Parametry
-
notificationId
ciąg znaków
Identyfikator powiadomienia, które ma zostać zaktualizowane. Jest on zwracany przez metodę
notifications.create. -
Opcje
Treść powiadomienia, na którą chcesz je zaktualizować.
Zwroty
-
Promise<boolean>
Chrome 116 lub nowszaZwraca obiekt Promise, który po rozwiązaniu wskazuje, czy istniało pasujące powiadomienie.
Wydarzenia
onButtonClicked
chrome.notifications.onButtonClicked.addListener(
callback: function,
)
Użytkownik kliknął przycisk w powiadomieniu.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(notificationId: string, buttonIndex: number) => void
-
notificationId
ciąg znaków
-
buttonIndex
liczba
-
onClicked
chrome.notifications.onClicked.addListener(
callback: function,
)
Użytkownik kliknął obszar powiadomienia, który nie jest przyciskiem.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(notificationId: string) => void
-
notificationId
ciąg znaków
-
onClosed
chrome.notifications.onClosed.addListener(
callback: function,
)
Powiadomienie zostało zamknięte przez system lub użytkownika.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(notificationId: string, byUser: boolean) => void
-
notificationId
ciąg znaków
-
byUser
Wartość logiczna
-
onPermissionLevelChanged
chrome.notifications.onPermissionLevelChanged.addListener(
callback: function,
)
Użytkownik zmienia poziom uprawnień. Od wersji Chrome 47 tylko ChromeOS ma interfejs, który wysyła to zdarzenie.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(level: PermissionLevel) => void
-
poziom
-
onShowSettings
chrome.notifications.onShowSettings.addListener(
callback: function,
)
Przycisk ustawień powiadomień niestandardowych nie jest już obsługiwany.
Użytkownik kliknął link do ustawień powiadomień aplikacji. Od wersji Chrome 47 tylko ChromeOS ma interfejs, który wysyła to zdarzenie. W Chrome 65 interfejs ten został usunięty również z ChromeOS.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:() => void