Opis
Za pomocą interfejsu chrome.notifications
API możesz tworzyć rozbudowane powiadomienia przy użyciu szablonów i wyświetlać je użytkownikom w zasobniku systemowym.
Uprawnienia
notifications
Typy
NotificationBitmap
NotificationButton
Właściwości
- iconUrl
string 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
string 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 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
string 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
string 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
string 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 iconUrl.
- isClickable
wartość logiczna opcjonalna
Wycofane w Chrome 67Ten podpowiedź interfejsu jest ignorowana od Chrome 67.
- items
NotificationItem[] opcjonalnie
Elementy powiadomień dotyczących wielu produktów. Użytkownicy systemu Mac OS X widzą tylko pierwszy element.
- wiadomość
string 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ższa wartość. 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 należy odtwarzać dźwięków ani włączać wibracji. Domyślnie ma wartość fałsz.
- tytuł
string 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ść, expandedMessage 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, które ma zostać usunięte. Jest on zwracany przez metodę
notifications.create
.
Zwroty
-
Promise<boolean>
Chrome 116 lub nowsza
create()
chrome.notifications.create(
notificationId?: string,
options: NotificationOptions,
): Promise<string>
Tworzy i wyświetla powiadomienie.
Parametry
- notificationId
string opcjonalny
Identyfikator powiadomienia. Jeśli to pole nie jest skonfigurowane lub jest puste, identyfikator zostanie wygenerowany automatycznie. Jeśli pasuje do istniejącego powiadomienia, ta metoda najpierw usuwa to powiadomienie, a następnie wykonuje operację tworzenia. Identyfikator nie może mieć więcej niż 500 znaków.
Przed Chrome 42 wymagany jest parametr
notificationId
. - Opcje
Treść powiadomienia.
Zwroty
-
Promise<string>
Chrome 116 lub nowsza
getAll()
chrome.notifications.getAll(): Promise<object>
Pobiera wszystkie powiadomienia z tej aplikacji lub rozszerzenia.
Zwroty
-
Promise<object>
Chrome 116 lub nowsza
getPermissionLevel()
chrome.notifications.getPermissionLevel(): Promise<PermissionLevel>
Sprawdza, czy użytkownik włączył powiadomienia z tej aplikacji lub tego rozszerzenia.
Zwroty
-
Promise<PermissionLevel>
Chrome 116 lub nowsza
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, które ma zostać zaktualizowane.
Zwroty
-
Promise<boolean>
Chrome 116 lub nowsza
Wydarzenia
onButtonClicked
chrome.notifications.onButtonClicked.addListener(
callback: function,
)
Użytkownik kliknął przycisk w powiadomieniu.
Parametry
- callback
funkcja
Parametr
callback
wyglą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
callback
wyglą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
callback
wyglą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
callback
wygląda tak:(level: PermissionLevel) => void
- poziom
-
onShowSettings
chrome.notifications.onShowSettings.addListener(
callback: function,
)
Przycisk niestandardowych ustawień powiadomień 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 ten interfejs został usunięty również z ChromeOS.
Parametry
- callback
funkcja
Parametr
callback
wygląda tak:() => void