説明
chrome.notifications
API を使用して、テンプレートを使用してリッチ通知を作成し、システムトレイでユーザーに表示します。
権限
notifications
型
NotificationBitmap
NotificationButton
プロパティ
-
iconUrl
文字列 省略可
Chrome 59 以降非推奨Mac OS X ユーザーにボタン アイコンが表示されない。
-
title
文字列
NotificationItem
プロパティ
-
メッセージ
文字列
このアイテムに関する追加情報。
-
title
文字列
リスト通知の 1 つの項目のタイトル。
NotificationOptions
プロパティ
-
appIconMaskUrl
文字列 省略可
Chrome 59 以降非推奨Mac OS X ユーザーにはアプリ アイコンのマスクが表示されません。
アプリのアイコン マスクの URL。URL には iconUrl と同じ制限があります。
アプリアイコンのマスクはアルファ チャンネルにする必要があります。画像のアルファ チャンネルのみが考慮されます。
-
buttons
NotificationButton[] 省略可
最大 2 つの通知アクション ボタンのテキストとアイコン。
-
contextMessage
文字列 省略可
通知のコンテンツを、よりウェイトの低いフォントで表示します。
-
eventTime
number 省略可
通知に関連付けられたタイムスタンプ(エポックからの経過時間、ミリ秒単位)。例:
Date.now() + n
。 -
iconUrl
文字列 省略可
送信者のアバター、アプリのアイコン、画像通知のサムネイルの URL。
URL は、データ URL、Blob URL、またはこの拡張機能の .crx ファイル内のリソースに対する相対 URL にできます。
**注:**この値は
notifications.create
()
メソッドで必要です。 -
imageUrl
文字列 省略可
Chrome 59 以降非推奨Mac OS X ユーザーには画像が表示されません。
画像タイプの通知の画像サムネイルの URL。URL には iconUrl と同じ制限があります。
-
isClickable
ブール値(省略可)
Chrome 67 以降で非推奨この UI ヒントは Chrome 67 以降では無視されます
-
アイテム
NotificationItem[] 省略可
複数項目の通知の項目。Mac OS X を使用しているユーザーには、最初の項目のみが表示されます。
-
メッセージ
文字列 省略可
メインの通知コンテンツ。
**注:**この値は
notifications.create
()
メソッドで必要です。 -
priority
number 省略可
優先度の範囲は -2 ~ 2 です。-2 が最も低い優先度です。2 が最も高い値です。デフォルトは 0 です。通知センターをサポートしていないプラットフォーム(Windows、Linux、Mac)では、優先度が -2 と -1 の通知はまったく表示されないため、エラーが発生します。
-
再生状況
number 省略可
現在の進行状況は 0 ~ 100 の範囲で表示されます。
-
requireInteraction
ブール値(省略可)
Chrome 50 以降ユーザーが通知を有効にするか閉じるまで、通知を画面に表示し続けることを示します。デフォルトは false です。
-
サイレント
ブール値(省略可)
Chrome 70 以降通知が表示されているときに音やバイブレーションを発生させないことを示します。デフォルトは false です。
-
title
文字列 省略可
通知のタイトル(メールの送信者名など)。
**注:**この値は
notifications.create
()
メソッドで必要です。 -
type
TemplateType 省略可
表示する通知の種類。
notifications.create
メソッドで必須。
PermissionLevel
列挙型
「granted」
ユーザーがアプリまたは拡張機能からの通知を表示することを選択したことを指定します。これはインストール時のデフォルトです。
「denied」
ユーザーがアプリまたは拡張機能からの通知を表示しないことを選択したことを指定します。
TemplateType
列挙型
"basic"
アイコン、タイトル、メッセージ、expandedMessage、最大 2 つのボタンが含まれます。
「image」
アイコン、タイトル、メッセージ、expandedMessage、画像、最大 2 つのボタンが含まれます。
"list"
アイコン、タイトル、メッセージ、アイテム、最大 2 つのボタンが含まれます。Mac OS X をご利用のユーザーには、最初の項目のみが表示されます。
「progress」
アイコン、タイトル、メッセージ、進行状況、最大 2 つのボタンが含まれます。
メソッド
clear()
chrome.notifications.clear(
notificationId: string,
): Promise<boolean>
指定された通知を消去します。
パラメータ
-
notificationId
文字列
削除する通知の ID。これは
notifications.create
メソッドによって返されます。
戻り値
-
Promise<boolean>
Chrome 116 以降
create()
chrome.notifications.create(
notificationId?: string,
options: NotificationOptions,
): Promise<string>
通知を作成して表示します。
パラメータ
-
notificationId
文字列 省略可
通知の識別子。設定されていない場合や空の場合、ID が自動的に生成されます。既存の通知と一致する場合、このメソッドはまずその通知をクリアしてから、作成オペレーションに進みます。識別子は 500 文字以下で指定してください。
Chrome 42 より前のバージョンでは、
notificationId
パラメータが必要です。 -
オプション
通知の内容。
戻り値
-
Promise<string>
Chrome 116 以降
getAll()
chrome.notifications.getAll(): Promise<object>
このアプリまたは拡張機能のすべての通知を取得します。
戻り値
-
Promise<object>
Chrome 116 以降
getPermissionLevel()
chrome.notifications.getPermissionLevel(): Promise<PermissionLevel>
ユーザーがこのアプリまたは拡張機能からの通知を有効にしているかどうかを取得します。
戻り値
-
Promise<PermissionLevel>
Chrome 116 以降
update()
chrome.notifications.update(
notificationId: string,
options: NotificationOptions,
): Promise<boolean>
既存の通知を更新します。
パラメータ
-
notificationId
文字列
更新する通知の ID。これは
notifications.create
メソッドによって返されます。 -
オプション
更新する通知の内容。
戻り値
-
Promise<boolean>
Chrome 116 以降
イベント
onButtonClicked
chrome.notifications.onButtonClicked.addListener(
callback: function,
)
ユーザーが通知のボタンを押しました。
パラメータ
-
callback
関数
callback
パラメータは次のようになります。(notificationId: string, buttonIndex: number) => void
-
notificationId
文字列
-
buttonIndex
数値
-
onClicked
chrome.notifications.onClicked.addListener(
callback: function,
)
ユーザーが通知のボタン以外の領域をクリックしました。
パラメータ
-
callback
関数
callback
パラメータは次のようになります。(notificationId: string) => void
-
notificationId
文字列
-
onClosed
chrome.notifications.onClosed.addListener(
callback: function,
)
システムまたはユーザーの操作によって通知が閉じられました。
パラメータ
-
callback
関数
callback
パラメータは次のようになります。(notificationId: string, byUser: boolean) => void
-
notificationId
文字列
-
byUser
ブール値
-
onPermissionLevelChanged
chrome.notifications.onPermissionLevelChanged.addListener(
callback: function,
)
ユーザーが権限レベルを変更します。Chrome 47 以降では、このイベントをディスパッチする UI を備えているのは ChromeOS のみです。
パラメータ
-
callback
関数
callback
パラメータは次のようになります。(level: PermissionLevel) => void
-
level
-
onShowSettings
chrome.notifications.onShowSettings.addListener(
callback: function,
)
カスタム通知設定ボタンはサポートされなくなりました。
ユーザーがアプリの通知設定のリンクをクリックしました。Chrome 47 以降では、このイベントをディスパッチする UI を備えているのは ChromeOS のみです。Chrome 65 以降、この UI は ChromeOS からも削除されています。
パラメータ
-
callback
関数
callback
パラメータは次のようになります。() => void