chrome.notifications

refresh date: 2026-09-25 robots: noindex

Mô tả

Sử dụng API chrome.notifications để tạo thông báo đa dạng bằng cách sử dụng các mẫu và cho người dùng thấy những thông báo này trong khay hệ thống.

Quyền

notifications

Loại

NotificationBitmap

NotificationButton

Thuộc tính

  • iconUrl

    chuỗi không bắt buộc

    Không dùng nữa kể từ Chrome 59

    Người dùng Mac OS X không nhìn thấy biểu tượng nút.

  • tiêu đề

    chuỗi

NotificationItem

Thuộc tính

  • tin nhắn

    chuỗi

    Thông tin bổ sung về mặt hàng này.

  • tiêu đề

    chuỗi

    Tiêu đề của một mục trong thông báo dạng danh sách.

NotificationOptions

Thuộc tính

  • appIconMaskUrl

    chuỗi không bắt buộc

    Không dùng nữa kể từ Chrome 59

    Người dùng Mac OS X sẽ không nhìn thấy mặt nạ biểu tượng ứng dụng.

    URL dẫn đến mặt nạ biểu tượng ứng dụng. URL có các quy tắc hạn chế tương tự như iconUrl.

    Mặt nạ biểu tượng ứng dụng phải ở kênh alpha, vì hệ thống sẽ chỉ xem xét kênh alpha của hình ảnh.

  • nút

    NotificationButton[] không bắt buộc

    Văn bản và biểu tượng cho tối đa 2 nút hành động trong thông báo.

  • contextMessage

    chuỗi không bắt buộc

    Nội dung thông báo thay thế bằng một phông chữ có trọng lượng thấp hơn.

  • eventTime

    number không bắt buộc

    Dấu thời gian liên kết với thông báo, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống (ví dụ: Date.now() + n).

  • iconUrl

    chuỗi không bắt buộc

    URL trỏ đến hình đại diện, biểu tượng ứng dụng hoặc hình thu nhỏ của người gửi cho thông báo bằng hình ảnh.

    URL có thể là URL dữ liệu, URL blob hoặc URL tương ứng với một tài nguyên trong tệp .crx của tiện ích này

    **Lưu ý:**Bạn phải cung cấp giá trị này cho phương thức notifications.create().

  • imageUrl

    chuỗi không bắt buộc

    Không dùng nữa kể từ Chrome 59

    Người dùng Mac OS X không nhìn thấy hình ảnh này.

    URL đến hình thu nhỏ của hình ảnh cho thông báo thuộc loại hình ảnh. URL có các quy tắc hạn chế tương tự như iconUrl.

  • isClickable

    boolean không bắt buộc

    Không dùng nữa kể từ Chrome 67

    Gợi ý này về giao diện người dùng sẽ bị bỏ qua kể từ Chrome 67

  • mục

    NotificationItem[] không bắt buộc

    Các mục cho thông báo nhiều mục. Người dùng Mac OS X chỉ thấy mục đầu tiên.

  • tin nhắn

    chuỗi không bắt buộc

    Nội dung chính của thông báo.

    **Lưu ý:**Bạn phải cung cấp giá trị này cho phương thức notifications.create().

  • của chiến dịch

    number không bắt buộc

    Mức độ ưu tiên nằm trong khoảng từ -2 đến 2. -2 là mức độ ưu tiên thấp nhất. 2 là mức cao nhất. Giá trị mặc định là 0. Trên những nền tảng không hỗ trợ trung tâm thông báo (Windows, Linux và Mac), -2 và -1 sẽ dẫn đến lỗi vì thông báo có mức độ ưu tiên đó sẽ không xuất hiện.

  • tiến trình

    number không bắt buộc

    Tiến trình hiện tại dao động từ 0 đến 100.

  • requireInteraction

    boolean không bắt buộc

    Chrome 50 trở lên

    Cho biết thông báo sẽ vẫn hiển thị trên màn hình cho đến khi người dùng kích hoạt hoặc loại bỏ thông báo. Giá trị mặc định là false.

  • im lặng

    boolean không bắt buộc

    Chrome 70 trở lên

    Cho biết rằng không nên phát âm thanh hoặc rung khi thông báo đang hiển thị. Giá trị mặc định là false.

  • tiêu đề

    chuỗi không bắt buộc

    Tiêu đề của thông báo (ví dụ: tên người gửi đối với email).

    **Lưu ý:**Bạn phải cung cấp giá trị này cho phương thức notifications.create().

  • loại

    TemplateType không bắt buộc

    Loại thông báo sẽ hiển thị. Bắt buộc đối với phương thức notifications.create.

PermissionLevel

Enum

"granted"
Chỉ định rằng người dùng đã chọn cho phép ứng dụng hoặc tiện ích hiển thị thông báo. Đây là chế độ mặc định tại thời điểm cài đặt.

"denied"
Chỉ định rằng người dùng đã chọn không hiển thị thông báo từ ứng dụng hoặc tiện ích.

TemplateType

Enum

"basic"
Chứa một biểu tượng, tiêu đề, thông báo, expandedMessage và tối đa 2 nút.

"image"
Chứa một biểu tượng, tiêu đề, thông báo, expandedMessage, hình ảnh và tối đa 2 nút.

"list"
Chứa một biểu tượng, tiêu đề, thông báo, các mục và tối đa 2 nút. Người dùng Mac OS X chỉ thấy mục đầu tiên.

"progress"
Chứa một biểu tượng, tiêu đề, thông báo, tiến trình và tối đa 2 nút.

Phương thức

clear()

Promise
chrome.notifications.clear(
  notificationId: string,
  callback?: function,
)
: Promise<boolean>

Xoá thông báo đã chỉ định.

Thông số

  • notificationId

    chuỗi

    Mã nhận dạng của thông báo cần xoá. Phương thức notifications.create sẽ trả về giá trị này.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (wasCleared: boolean) => void

    • wasCleared

      boolean

Giá trị trả về

  • Promise<boolean>

    Chrome 116 trở lên

    Trả về một Promise phân giải để cho biết có thông báo trùng khớp hay không.

    Chỉ Manifest V3 trở lên mới hỗ trợ Promise, các nền tảng khác cần sử dụng lệnh gọi lại.

create()

Promise
chrome.notifications.create(
  notificationId?: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<string>

Tạo và hiển thị một thông báo.

Thông số

  • notificationId

    chuỗi không bắt buộc

    Giá trị nhận dạng của thông báo. Nếu bạn không đặt hoặc để trống, thì một mã nhận dạng sẽ được tạo tự động. Nếu mã này khớp với một thông báo hiện có, thì phương thức này sẽ xoá thông báo đó trước khi tiếp tục với thao tác tạo. Giá trị nhận dạng không được dài hơn 500 ký tự.

    Bạn phải dùng tham số notificationId trước Chrome 42.

  • tùy chọn

    Nội dung của thông báo.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (notificationId: string) => void

    • notificationId

      chuỗi

Giá trị trả về

  • Promise<string>

    Chrome 116 trở lên

    Trả về một Promise phân giải bằng mã nhận dạng thông báo (được cung cấp hoặc được tạo) đại diện cho thông báo đã tạo.

    Chỉ Manifest V3 trở lên mới hỗ trợ Promise, các nền tảng khác cần sử dụng lệnh gọi lại.

getAll()

Promise
chrome.notifications.getAll(
  callback?: function,
)
: Promise<object>

Truy xuất tất cả thông báo của ứng dụng hoặc tiện ích này.

Thông số

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (notifications: object) => void

    • thông báo

      đối tượng

Giá trị trả về

  • Promise<object>

    Chrome 116 trở lên

    Trả về một Promise (Lời hứa) phân giải bằng tập hợp notification_ids hiện có trong hệ thống.

    Chỉ Manifest V3 trở lên mới hỗ trợ Promise, các nền tảng khác cần sử dụng lệnh gọi lại.

getPermissionLevel()

Promise
chrome.notifications.getPermissionLevel(
  callback?: function,
)
: Promise<PermissionLevel>

Truy xuất thông tin về việc người dùng đã bật thông báo từ ứng dụng hoặc tiện ích này hay chưa.

Thông số

Giá trị trả về

  • Chrome 116 trở lên

    Trả về một Promise phân giải với cấp độ quyền hiện tại.

    Chỉ Manifest V3 trở lên mới hỗ trợ Promise, các nền tảng khác cần sử dụng lệnh gọi lại.

update()

Promise
chrome.notifications.update(
  notificationId: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<boolean>

Cập nhật một thông báo hiện có.

Thông số

  • notificationId

    chuỗi

    Mã nhận dạng của thông báo cần cập nhật. Phương thức notifications.create sẽ trả về giá trị này.

  • tùy chọn

    Nội dung của thông báo cần cập nhật.

  • callback

    hàm không bắt buộc

    Tham số callback có dạng như sau:

    (wasUpdated: boolean) => void

    • wasUpdated

      boolean

Giá trị trả về

  • Promise<boolean>

    Chrome 116 trở lên

    Trả về một Promise phân giải để cho biết có thông báo trùng khớp hay không.

    Chỉ Manifest V3 trở lên mới hỗ trợ Promise, các nền tảng khác cần sử dụng lệnh gọi lại.

Sự kiện

onButtonClicked

chrome.notifications.onButtonClicked.addListener(
  callback: function,
)

Người dùng nhấn vào một nút trong thông báo.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (notificationId: string, buttonIndex: number) => void

    • notificationId

      chuỗi

    • buttonIndex

      số

onClicked

chrome.notifications.onClicked.addListener(
  callback: function,
)

Người dùng nhấp vào một khu vực không phải nút của thông báo.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (notificationId: string) => void

    • notificationId

      chuỗi

onClosed

chrome.notifications.onClosed.addListener(
  callback: function,
)

Thông báo đã đóng, do hệ thống hoặc do hành động của người dùng.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (notificationId: string, byUser: boolean) => void

    • notificationId

      chuỗi

    • byUser

      boolean

onPermissionLevelChanged

chrome.notifications.onPermissionLevelChanged.addListener(
  callback: function,
)

Người dùng thay đổi cấp độ quyền. Kể từ Chrome 47, chỉ ChromeOS có giao diện người dùng gửi sự kiện này.

Thông số

onShowSettings

Không dùng nữa kể từ Chrome 65
chrome.notifications.onShowSettings.addListener(
  callback: function,
)

Nút chế độ cài đặt thông báo tuỳ chỉnh không còn được hỗ trợ.

Người dùng nhấp vào một đường liên kết để xem chế độ cài đặt thông báo của ứng dụng. Kể từ Chrome 47, chỉ ChromeOS có giao diện người dùng gửi sự kiện này. Kể từ Chrome 65, giao diện người dùng đó cũng đã bị xoá khỏi ChromeOS.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    () => void