Chuyển sang hệ thống thông báo gốc trên macOS

Paul Lewis
Stephen McGruer
Stephen McGruer

Kể từ Chrome 59, các thông báo được gửi qua API Thông báo hoặc API tiện ích chrome.notification sẽ hiển thị trực tiếp bởi hệ thống thông báo gốc macOS thay vì hệ thống của riêng Chrome.

Thay đổi này giúp Chrome trên macOS cảm thấy tích hợp tốt hơn nhiều vào nền tảng và khắc phục một số lỗi lâu dài, chẳng hạn như Chrome không tuân thủ chế độ cài đặt Không làm phiền của hệ thống.

Dưới đây, chúng ta sẽ tìm hiểu những điểm khác biệt mà thay đổi này gây ra với các API hiện có.

Trung tâm thông báo

Một trong những lợi ích của thay đổi này là các thông báo sẽ xuất hiện trong trung tâm thông báo của macOS.

Thông báo của Google Chrome sẽ xuất hiện trong trung tâm thông báo của macOS
Thông báo của Google Chrome sẽ xuất hiện trong trung tâm thông báo của macOS

Điểm khác biệt

Kích thước và vị trí biểu tượng

Giao diện của các biểu tượng sẽ thay đổi. Các kích thước này sẽ nhỏ hơn và khoảng đệm sẽ được áp dụng. Bạn nên cân nhắc chuyển sang biểu tượng nền trong suốt thay vì màu đồng nhất để đẹp mắt.

Biểu tượng thông báo trước và sau của Chrome trên máy Mac do Chrome hiển thị so với macOS hiển thị.
Biểu tượng thông báo trước và sau của Chrome trên máy Mac do Chrome hiển thị so với biểu tượng thông báo do macOS hiển thị

Biểu tượng hành động

Trước khi có các nút và biểu tượng hành động thay đổi này sẽ hiển thị trong thông báo. Với thông báo gốc, các biểu tượng nút hành động sẽ không được sử dụng và người dùng sẽ cần di chuột qua thông báo rồi chọn nút "Thêm" để xem các thao tác có sẵn.

Trước và sau các nút hành động thông báo có biểu tượng do Chrome hiển thị so với macOS hiển thị.
Nút hành động trước và sau thông báo có biểu tượng do Chrome hiển thị so với biểu tượng do macOS hiển thị

Biểu trưng Chrome sẽ luôn hiển thị và không thể thay thế hoặc thay đổi. Đây là yêu cầu đối với các ứng dụng bên thứ ba trên macOS.

Hình ảnh

Tuỳ chọn image sẽ không còn được hỗ trợ trên macOS. Nếu bạn xác định một thuộc tính hình ảnh, thông báo sẽ vẫn hiển thị, nhưng sẽ bỏ qua tham số hình ảnh (Xem ví dụ bên dưới).

Hình ảnh trước và sau khi hiển thị thông báo của Chrome trên macOS.
Hình ảnh thông báo trước và sau của Chrome trên macOS

Bạn có thể làm nổi bật tính năng hỗ trợ phát hiện hình ảnh bằng mã sau:

if ('image' in Notification.prototype) {  
  // Image is supported.
} else {  
  // Image is NOT supported.
}

Các thay đổi đối với tiện ích của Chrome

Các tiện ích của Chrome có khái niệm về mẫu thông báo sẽ hoạt động khác với thay đổi này.

Mẫu thông báo dạng hình ảnh sẽ không còn hiển thị hình ảnh nữa. Bạn nên đảm bảo rằng hình ảnh mang tính bổ sung và không bắt buộc phải hữu ích cho người dùng.

Trước và sau đối với các mẫu hình ảnh trong API chrome.notification.
Trước và sau các mẫu hình ảnh trong API chrome.notification

Mẫu thông báo danh sách sẽ chỉ hiển thị mục đầu tiên trong danh sách. Bạn nên xem xét việc quay lại kiểu thông báo cơ bản và sử dụng văn bản nội dung để tóm tắt tập hợp các thay đổi.

Trước và sau đối với mẫu danh sách trong API chrome.notification.
Trước và sau đối với các mẫu danh sách trong API chrome.notification

Thông báo tiến trình sẽ thêm giá trị phần trăm vào tiêu đề thông báo để cho biết tiến trình thay vì thanh tiến trình.

Trước và sau đối với mẫu tiến trình trong API chrome.notification.
Trước và sau đối với mẫu tiến trình trong API chrome.notification

Điểm khác biệt cuối cùng trong giao diện người dùng của thông báo là appIconMarkUrl sẽ không còn được dùng trên macOS nữa.

Trước và sau đối với appIconMarkUrl trong API chrome.notification.
Trước và sau đối với appIconMarkUrl trong API chrome.notification