Hãy thường xuyên kiểm tra trang này để tìm hiểu về những thay đổi đối với phần mở rộng Chrome, tài liệu về phần mở rộng hoặc chính sách liên quan cũng như các thay đổi khác. Bạn sẽ thấy các thông báo khác được đăng trên Nhóm Google về tiện ích. Lịch phát hành của Chrome liệt kê ngày phát hành phiên bản ổn định và beta.
Prompt API trong tiện ích của Chrome
Prompt API for Extensions (API Lời nhắc cho tiện ích) hiện đã có trong bản dùng thử theo nguyên gốc. Nhờ đó, bạn có thể tạo các tiện ích Chrome sử dụng Gemini Nano, mô hình ngôn ngữ hiệu quả nhất của chúng tôi, trong trình duyệt.
Tham gia bản dùng thử theo nguyên gốc Prompt API, chạy trong Chrome 131 đến 136 và chia sẻ ý kiến phản hồi của bạn. Thông tin bạn cung cấp có thể ảnh hưởng trực tiếp đến cách chúng tôi xây dựng và triển khai các phiên bản sau này của API này, cũng như tất cả API tích hợp sẵn dựa trên AI.
Bài đăng trên blog: Những điều đang diễn ra trong Tiện ích của Chrome, tháng 10 năm 2024
Đã đến lúc chúng ta tổng kết những gì đang diễn ra trong Tiện ích Chrome: chúng tôi có những thông tin cập nhật thú vị về việc tích hợp AI, API mới, sự kiện và video. Hãy đọc toàn bộ thông tin về vấn đề này trong bài viết Những điểm mới trong tiện ích Chrome tháng 10!
Tham gia thử thách AI tích hợp
Chrome đã đưa ra Thử thách AI tích hợp: Bạn được mời tạo các ứng dụng web và Tiện ích của Chrome sáng tạo bằng các API và mô hình AI tích hợp của Chrome, đồng thời có cơ hội giành được các phần thưởng tổng cộng 65.000 USD.
Đăng ký và tìm hiểu thêm thông tin trên trang web của Thử thách tích hợp AI. Chúng tôi rất mong được xem những nội dung bạn sáng tạo khi kết hợp AI với web!
Chrome 130: action.onUserSettingsChanged
Kể từ Chrome 130, bạn có thể sử dụng sự kiện action.onUserSettingsChanged. Điều này tuân theo một đề xuất trong Nhóm cộng đồng WebExtensions. Cảm ơn Microsoft đã đóng góp cho Chromium.
Chrome 130: StorageArea.getKeys()
Kể từ Chrome 130, phương thức getKeys() sẽ có trên giao diện StorageArea mà API chrome.storage
sử dụng. Điều này tuân theo một đề xuất trong Nhóm cộng đồng WebExtensions.
Chrome 128: So khớp tiêu đề phản hồi trong Yêu cầu mạng khai báo
Kể từ Chrome 128, chúng tôi sẽ hỗ trợ thêm tính năng so khớp tiêu đề phản hồi trong Declarative Net Request API. Đây là một yêu cầu phổ biến, đặc biệt là để so khớp tiêu đề Content-Type. Chúng tôi đã thiết kế một API phù hợp cùng với Nhóm cộng đồng WebExtensions.
Chúng tôi đã cập nhật tài liệu tham khảo API để thêm các trường responseHeaders
và excludedResponseHeaders
mới. Bạn có thể sử dụng các tham số này để kiểm tra sự tồn tại và giá trị của một tiêu đề cụ thể.
Trong lần cập nhật này, chúng tôi đã thêm một mục mới về đánh giá quy tắc vào tài liệu của chúng tôi để giải thích cách so khớp các quy tắc. Cụ thể, đối với việc so khớp tiêu đề, các quy tắc chỉ có thể chạy sau khi nhận được tiêu đề phản hồi, vì vậy, các quy tắc này được áp dụng ở giai đoạn sau so với các quy tắc khác. Điều này có nghĩa là yêu cầu đã đến máy chủ trước khi bị chặn hoặc chuyển hướng.
Video: Tập lệnh nội dung là gì?
Tìm hiểu về tập lệnh nội dung trong Tiện ích Chrome, bao gồm cả cách đăng ký CSS và JavaScript để chạy trên một trang cụ thể. Xem toàn bộ video.
Thông tin cập nhật quan trọng về chính sách
Nhóm Cửa hàng Chrome trực tuyến đã phát hành một loạt nội dung cập nhật cho trang Chính sách chương trình dành cho nhà phát triển nhằm khuyến khích phát triển các sản phẩm chất lượng cao, ngăn chặn hành vi lừa đảo và đảm bảo sự đồng ý sáng suốt của người dùng. Rebecca Soares, người quản lý chính sách của Cửa hàng Chrome trực tuyến, đã tóm tắt tất cả nội dung cập nhật trong bài đăng trên blog về Tiện ích Chrome: Nội dung cập nhật quan trọng về chính sách.
Bài đăng trên blog: Những điều đang diễn ra trong Tiện ích của Chrome, tháng 7 năm 2024
Trong 3 tháng qua, chúng tôi đã ra mắt một số bản cập nhật và tính năng mới quan trọng, bao gồm cả việc bắt đầu loại bỏ tệp kê khai Manifest V2. Nắm bắt thông tin mới nhất trong bài viết Những điều sẽ xảy ra trong phiên bản Tiện ích của Chrome tháng 7!
Video: Mã được lưu trữ từ xa là gì?
Patrick thuộc nhóm Tiện ích của Chrome giải thích khái niệm về Mã được lưu trữ từ xa (RHC) trong Tiện ích của Chrome. Tìm hiểu lý do khiến RHC không còn được cho phép, cách phát hiện và việc cần làm nếu tiện ích của bạn cần được cập nhật. Xem toàn bộ video.
Chrome 127: API action.openPopup mới
Kể từ Chrome 127, API action.openPopup
được cung cấp cho tất cả tiện ích. Trước đây, tính năng này chỉ có trong Canary hoặc cho các tiện ích được cài đặt theo chính sách.
Video: Phỏng vấn nhóm phụ trách vấn đề Tin cậy và An toàn
Nhóm DevRel của Tiện ích Chrome đã ngồi lại với nhóm Niềm tin và sự an toàn (nhóm phụ trách quy trình xem xét trong Cửa hàng Chrome trực tuyến) để giải đáp thắc mắc của bạn. Xem toàn bộ video.
Bài đăng trên blog: Bắt đầu ngừng cung cấp Manifest V2
Kể từ ngày 3 tháng 6 trên các kênh Chrome Beta, Dev và Canary, nếu người dùng vẫn cài đặt tiện ích Manifest V2, một số người dùng sẽ bắt đầu thấy biểu ngữ cảnh báo khi truy cập vào trang quản lý tiện ích – chrome://extensions – thông báo cho họ rằng một số tiện ích (Manifest V2) mà họ đã cài đặt sẽ sớm không được hỗ trợ nữa. Đọc thêm trong thông báo chính thức
Nội dung cập nhật về giao diện người dùng của Bảng điều khiển bên
Gần đây, chúng tôi đã thực hiện một số thay đổi đối với giao diện người dùng của Bảng điều khiển bên, bao gồm cả việc thêm biểu tượng ghim và xoá biểu tượng chung của bảng điều khiển bên. Hãy đọc thêm trong thông báo PSA và xem tài liệu và mẫu đã cập nhật của chúng tôi.
Bài đăng trên blog: Tiện ích của Chrome tại Google I/O 2024
Một sự kiện Google I/O nữa đã kết thúc và chúng tôi đã giới thiệu tất cả các bản cập nhật thú vị về tiện ích! Hãy chuyển đến YouTube để xem toàn bộ video và đọc bài đăng trên blog của chúng tôi để biết một số video nổi bật.
Bỏ qua quy trình xem xét đối với các thay đổi đủ điều kiện về Yêu cầu trong mạng bằng quy tắc khai báo
Giờ đây, Cửa hàng Chrome trực tuyến cho phép bạn bỏ qua quy trình xem xét đối với các thay đổi đủ điều kiện khi sử dụng API Yêu cầu mạng khai báo. Tìm hiểu thêm về điều kiện sử dụng và cách chọn sử dụng trong tài liệu về Cửa hàng Chrome trực tuyến.
deployPercentage có trong API Cửa hàng Chrome trực tuyến
Gần đây, chúng tôi đã cập nhật tài liệu về API Cửa hàng Chrome trực tuyến để thêm thông tin về deployPercentage
. API này cho phép bạn chỉ định tỷ lệ phần trăm của một lượt triển khai phát hành một phần. Tìm hiểu về deployPercentage
.
Chrome 126: Bản dùng thử theo nguyên gốc trong tiện ích
Chrome 126 ra mắt một trường manifest.json mới – trial_tokens
, cho phép bạn chọn sử dụng Bản dùng thử theo nguyên gốc và Bản dùng thử ngừng hoạt động trên tất cả các nền tảng tiện ích. Hãy đọc hướng dẫn để biết thêm thông tin.
Bài đăng trên blog: Những điều sẽ xảy ra trong Tiện ích của Chrome – Tháng 4 năm 2024
Chúng tôi đã phát hành phiên bản mới của bài viết Những thay đổi trong tiện ích Chrome. Bài đăng này nói về những việc mà nhóm mở rộng đã làm trong vài tháng qua. Điều này bao gồm: Khôi phục phiên bản trong Cửa hàng Chrome trực tuyến, hỗ trợ Xác thực Firebase tốt hơn và nhiều lần khởi chạy và cập nhật API hơn.
Tính năng khôi phục phiên bản trong Trang tổng quan dành cho nhà phát triển Cửa hàng Chrome trực tuyến
Hãy khôi phục tiện ích của bạn về phiên bản đã phát hành trước đó trong Cửa hàng Chrome trực tuyến mà không cần xem xét thêm! Hãy đọc bài đăng trên blog và tài liệu để biết thêm thông tin.
Chrome 124: API documentScan nâng cao
documentScan
API nâng cao hiện đã có trên ChromeOS để khám phá và truy xuất hình ảnh từ trình quét tài liệu đính kèm.
Chrome 124: Hỗ trợ WebGPU trong Worker dịch vụ
Kể từ Chrome 124, worker dịch vụ hỗ trợ WebGPU. Để bắt đầu nhanh, hãy xem mẫu tiện ích WebGPU.
Chrome 123: API Sự kiện hỗ trợ lọc theo khối CIDR
API Sự kiện hiện hỗ trợ lọc
bằng các khối Định tuyến giữa các miền không phân lớp (CIDR). Khối CIDR là một tập hợp các địa chỉ IP có chung một tiền tố mạng và cùng số bit. Trước đây, nhà phát triển cần lọc nhiều địa chỉ IP để định cấu hình quy tắc bộ lọc cho từng địa chỉ trong dải ô chặn. Bây giờ, khi một tiện ích gọi addListener()
, quy tắc được truyền vào có nghĩa là trình xử lý sự kiện sẽ chỉ được gọi khi phần máy chủ lưu trữ của URL là địa chỉ IP và nằm trong bất kỳ khối CIDR nào được chỉ định trong một mảng.
Cửa hàng Chrome trực tuyến: Cập nhật các yêu cầu về độ dài tên tiện ích
Trên Cửa hàng Chrome trực tuyến, hiện có giới hạn chung là 75 ký tự cho trường "name"
của tiện ích trong tệp manifest.json. Trước đây, giới hạn cho tiếng Anh là 45 ký tự và không có hạn chế nào đối với trường "name"
trong các ngôn ngữ khác.
Ban đầu, điều này nhằm cho phép sự khác biệt về văn hoá và ngôn ngữ mà có thể không thể được ghi lại trong cùng một số ký tự. Tuy nhiên, một số ít nhà phát triển đã lợi dụng tính năng này để gửi nội dung rác vào Cửa hàng Play. Do đó, chúng tôi sẽ áp dụng giới hạn chung mới tăng lên 75 ký tự. Giới hạn này áp dụng cho gần như tất cả các tiện ích trên Cửa hàng Play hiện nay, vì vậy, có thể bạn sẽ không cần làm gì cả do thay đổi này. Nếu bạn cố tải một tiện ích có tên dài hơn giới hạn tối đa lên, thì cửa hàng sẽ chặn quá trình tải lên.
Bài đăng trên blog: Hành trình của eyeo trong việc thử nghiệm việc tạm ngưng trình chạy dịch vụ
Trong bài đăng này của nhóm Công cụ mở rộng eyeo, chúng tôi khám phá vấn đề kiểm thử trình chạy dịch vụ tiện ích. Trong Manifest V2, các tiện ích nằm trong một trang ở chế độ nền, luôn thức trong suốt vòng đời của tiện ích. Tệp kê khai V3 sử dụng trình chạy dịch vụ và theo thiết kế, trình chạy dịch vụ sẽ tiết kiệm tài nguyên bằng cách tắt khi không cần thiết. Điều này gây ra một số thách thức nhất định trong quá trình kiểm thử. Bài đăng này giải thích cách eyeo giải quyết những thách thức này.
Chrome 123: Chuông báo hiện chạy khi thiết bị ở chế độ ngủ
Các chuông báo được đặt sử dụng API chrome.alarms
sẽ không còn bị trì hoãn khi thiết bị chuyển sang chế độ ngủ. Khi thiết bị thức dậy, chuông báo sẽ kích hoạt một lần bất kể bạn đã bỏ lỡ bao nhiêu chuông báo. Ví dụ: giả sử chuông báo được đặt để kêu một lần mỗi giờ và thiết bị đang ở trạng thái ngủ từ 00:55 đến 02:05, thì chỉ chuông báo lúc 02:00 mới kích hoạt sự kiện onAlarm
.
Lệnh này sẽ kích hoạt gần 2:00 AM nhất có thể và ngay lập tức khi thiết bị thức dậy nếu thiết bị đang ở trạng thái ngủ.
Thay đổi này giúp Chrome tuân thủ hành vi đã thoả thuận trong Nhóm cộng đồng về tiện ích web.
Bài đăng trên blog: Thay đổi đối với hành vi bfcache với cổng thông báo tiện ích
Bộ nhớ đệm cho thao tác tiến/lùi (bfcache) là một tính năng tối ưu hoá của trình duyệt, cho phép điều hướng tiến và lùi trong tích tắc. Kể từ Chrome 123, khi một trang có cổng tiện ích mở được lưu trữ trong bfcache, kênh thông báo sẽ bị đóng, nghĩa là sẽ không có thông báo nào được gửi đến trang đó.
Do đó, tập lệnh tiện ích phải theo dõi các sự kiện trong vòng đời như onDisconnect
và thiết lập kết nối mới khi trang được khôi phục từ BFCache.
Để biết thêm thông tin và mã mẫu, hãy xem phần Thay đổi đối với hành vi của BFCache với cổng thông báo tiện ích.
Chrome 122: Hứa hẹn hỗ trợ các API tiện ích không đồng bộ
Chúng tôi đã hoàn tất việc triển khai tính năng hỗ trợ Promise cho tất cả các phương thức API của tiện ích không đồng bộ. Việc này được thực hiện để hiện đại hoá các phương thức API bằng cách cải thiện tính tiện dụng của việc xử lý các thao tác không đồng bộ. Một số phương thức (ví dụ: desktopCapture.chooseDesktopMedia()
) tiếp tục chỉ hỗ trợ lệnh gọi lại vì các nền tảng hiện tại của chúng không tương thích với Lời hứa. Để tương thích ngược, lệnh gọi lại vẫn được hỗ trợ. Nếu bạn phát hiện một Lời hứa không thành công,
vui lòng gửi lỗi.
Hướng dẫn mới về hoạt động giao tiếp theo thời gian thực
Chúng tôi vừa xuất bản hướng dẫn về các tuỳ chọn theo thời gian thực trong tiện ích. Tính năng cập nhật theo thời gian thực cung cấp một đường dẫn giao tiếp tức thì từ máy chủ của bạn trực tiếp đến các lượt cài đặt tiện ích. Ngoài ra, chúng tôi có hướng dẫn mới về cách sử dụng chrome.gcm, Web Push.
Hướng dẫn và mẫu mới: Kiểm thử việc chấm dứt worker dịch vụ
Chúng tôi vừa xuất bản hướng dẫn về cách Kiểm thử việc chấm dứt worker dịch vụ bằng Puppeteer. Mẫu đi kèm minh hoạ điều này trong Puppeteer và Selenium.
Cập nhật mẫu cho tính năng nhắn tin gốc
Chúng tôi vừa phát hành một mẫu mới cập nhật cho tính năng nhắn tin gốc. API này cho phép tiện ích của bạn bắt đầu và giao tiếp với một ứng dụng khác. Cảm ơn cộng tác viên GitHub Shubham-Rasal đã đóng góp cho việc này.
Chrome 121: Thuộc tính lastAccessed mới trên tab.Tab
Thuộc tính mới có tên là lastAccessed
đã được thêm vào đối tượng tabs.Tab
. Thuộc tính này cho biết thời điểm gần đây nhất thẻ được kích hoạt. Giá trị được trả về tính bằng mili giây kể từ thời gian bắt đầu của hệ thống.
Chrome 121: Các khoá "nền" không được hỗ trợ nay đưa ra cảnh báo
Trong quá trình thay đổi từ Manifest V2 sang Manifest V3, các phần tử con của khoá tệp kê khai "background"
đã được thay đổi để phù hợp với việc thay thế tập lệnh trong nền bằng worker dịch vụ tiện ích. Trước đây, việc thêm các khoá Manifest V2 "scripts"
, "page"
hoặc "persistent"
vào khoá "background"
của tiện ích Manifest V3 sẽ gây ra lỗi. Giờ đây, sự hiện diện của các khoá này sẽ kích hoạt cảnh báo.
Việc này đang được thực hiện để cho phép sử dụng một tệp kê khai trong các tiện ích trên nhiều trình duyệt, theo đề xuất trong nhóm cộng đồng.
Chrome 120: Giảm độ chi tiết tối thiểu của chuông báo xuống còn 30 giây
Kể từ Chrome 120, các tiện ích Manifest V3 có thể sử dụng API chrome.alarms
với độ trễ hoặc khoảng thời gian là 30 giây, thay vì yêu cầu các giá trị từ 60 giây trở lên.
Bài đăng trên blog: Tiếp tục quá trình chuyển đổi sang Manifest V3
Tiến trình hỗ trợ Manifest V2 đã được cập nhật. Hãy xem bài đăng trên blog vào tháng 11 năm 2023 để biết thông tin chi tiết.
Bài đăng trên blog: Cải tiến tính năng hỗ trợ lọc nội dung trong Manifest V3
Tìm hiểu cách chúng tôi cải thiện API declarativeNetRequest trong bài đăng mới trên blog.
Bài đăng trên blog: Tính năng mới trong Chrome 120 dành cho tiện ích
Gần đây, chúng tôi đã phát hành Chrome 120 Beta. Để nhận bản tóm tắt các nội dung cập nhật quan trọng liên quan đến nhà phát triển tiện ích, hãy đọc bài đăng mới trên blog của chúng tôi: Tính năng mới trong Chrome 120 dành cho tiện ích. Bản phát hành này cũng đánh dấu một cột mốc quan trọng vì xoá hai mục cuối cùng (userScripts, trình xử lý tệp trên ChromeOS) khỏi danh sách các khoảng trống quan trọng trên nền tảng.
Thông báo quan trọng: Thay đổi cách xử lý URL chính sách quyền riêng tư trong Trang tổng quan dành cho nhà phát triển
Chính sách quyền riêng tư trong Trang tổng quan dành cho nhà phát triển hiện được thêm ở cấp mặt hàng. Điều này cho phép bạn cung cấp một chính sách quyền riêng tư khác nhau cho mỗi mặt hàng. Hãy đọc thêm về sự thay đổi này trong thông báo của chúng tôi.
Video: Trò chuyện với Matt Frisbie
Chúng tôi vừa xuất bản một video mới trên kênh YouTube Chrome for Developers và trò chuyện với Chuyên gia nhà phát triển của Google và tác giả Matt Frisbie. Xem video đó tại đây.
Hướng dẫn mới về cách kiểm thử tiện ích
Chúng tôi vừa phát hành hướng dẫn mới về cách viết mã kiểm thử tự động cho tiện ích, bao gồm cả cách viết mã kiểm thử đơn vị, hướng dẫn chung và hướng dẫn về kiểm thử toàn diện.
Bài đăng trên blog: Những điều đang diễn ra trong Tiện ích của Chrome – Tháng 10 năm 2023
Chúng tôi vừa phát hành ấn bản thứ hai của bài viết Những điều đang diễn ra trong tiện ích Chrome. Bài đăng này thảo luận về những gì nhóm tiện ích đã làm trong vài tháng qua, bao gồm cả việc giải quyết các vấn đề về độ ổn định của worker dịch vụ và tiến triển tốt trong việc khắc phục tất cả các khoảng trống trên nền tảng MV3. Chúng tôi cũng chia sẻ các bản phát hành API sắp tới rất thú vị như API Danh sách đọc và API Tập lệnh của người dùng.
Tăng giới hạn của bộ quy tắc tĩnh trong API yêu cầu mạng khai báo
Sau khi xem xét ý kiến phản hồi trong Nhóm cộng đồng về Tiện ích web, chúng tôi sẽ tăng đáng kể giới hạn về số lượng quy tắc tĩnh đã bật từ 10 lên 50. Ngoài ra, chúng tôi sẽ tăng tổng số quy tắc tĩnh được phép từ 50 lên 100. Tính năng này hiện có trong Canary.
Cải thiện hướng dẫn về mã được lưu trữ từ xa
Một yêu cầu đối với Manifest V3 là các tiện ích không thể sử dụng mã được lưu trữ từ xa nữa. Mặc dù vấn đề này đã có trong hướng dẫn di chuyển của chúng tôi ngay từ đầu, nhưng chúng tôi cho rằng cần cải thiện hướng dẫn về vấn đề này. Trang đó hiện cung cấp thêm thông tin, mô tả những gì vẫn có thể trong Manifest V3 và cung cấp thêm thông tin về các chiến lược nâng cấp.
Chúng tôi cũng bổ sung thêm một phần liên quan trong bài viết Khắc phục lỗi vi phạm trên Cửa hàng Chrome trực tuyến. Một phần mới mô tả các lý do phổ biến khiến các tiện ích có mã được lưu trữ từ xa bị từ chối.
Chrome 118: isUrlFilterCaseSensitive hiện mặc định là false
Kể từ Chrome 118, thuộc tính isUrlFilterCaseSensitive
trong API chrome.declarativeNetRequest đã được thay đổi thành mặc định là false
. Nếu muốn giữ nguyên hành vi cũ, bạn có thể đặt isUrlFilterCaseSensitive
thành true
một cách rõ ràng trong các quy tắc declarativeNetRequest.
Quyết định này được đưa ra sau các cuộc thảo luận trong Nhóm cộng đồng về Tiện ích web. Firefox và Safari đã triển khai một thay đổi tương tự.
Tài liệu về cookie và API bộ nhớ web
Chúng tôi đã phát hành hướng dẫn mới về cách hoạt động của cookie và API lưu trữ trên web trong các tiện ích của Chrome. Tài liệu này bao gồm thông tin chi tiết về các thay đổi đối với cookie và tính năng phân vùng bộ nhớ trong Hộp cát về quyền riêng tư, một dự án đang diễn ra nhằm ngừng sử dụng cookie của bên thứ ba thông qua việc tạo một loạt API nền tảng web mới và thông tin chi tiết về cách hoạt động của các API đó trong tiện ích.
Giờ đây, bạn có thể tìm kiếm được các mẫu tiện ích
Gần đây, chúng tôi đã tạo một trang cho phép bạn tìm kiếm các mẫu tiện ích Chrome. Trang tìm kiếm có nhiều lựa chọn. Hộp tìm kiếm cho phép bạn tìm kiếm văn bản trong tiêu đề mẫu. Bạn có thể hạn chế tìm kiếm theo quyền hoặc API tiện ích. Bộ lọc bổ sung cho phép bạn hạn chế tìm kiếm ở các mẫu API hoặc mẫu chức năng (trường hợp sử dụng).
Trang mẫu mới này do Xuezhou Dai, một người tham gia chương trình Google Summer of Code, xây dựng. Anh cũng đóng góp một số mẫu mới. Bạn có thể đọc về trải nghiệm của họ vào mùa hè vừa qua trong bài đăng của họ trên blog của chúng tôi.
Như trước đây, mã mẫu của chúng tôi vẫn có sẵn trên GitHub để sao chép hoặc phát triển nhánh.
Chrome 118: Thay đổi đối với tệp đang mở: URL giao thức
Kể từ Chrome 118, các tiện ích sẽ cần bật chế độ cài đặt "Cho phép truy cập vào URL của tệp" trên trang chrome://extensions
để mở URL theo giao thức file:// bằng API Thẻ hoặc Cửa sổ. Bạn có thể kiểm tra quyền truy cập này theo phương thức lập trình bằng cách gọi chrome.extension.isAllowedFileSchemeAccess()
. Firefox đã hạn chế URL tệp và Safari hỗ trợ thay đổi này. Để biết thêm thông tin, hãy đọc bài đăng trong Nhóm Google về tiện ích.
Chrome 117: Mở rộng tính năng bảo vệ URL trên các thao tác điều hướng API tiện ích
Trước đây, thao tác điều hướng được kích hoạt từ các lệnh gọi API tiện ích cho tabs.update()
, tabs.create()
và windows.create()
đã phát ra lỗi cho một số URL chrome://. Ngoài ra, việc gọi tabs.update()
bằng URL JavaScript bị cấm. Trong phiên bản 117, các biện pháp bảo vệ này đối với URL JavaScript đã được mở rộng sang phương thức tabs.create()
và một số URL chrome:// khác đã được thêm vào danh sách URL bị cấm áp dụng cho tất cả các phương thức đã đề cập trước đó.
Cải thiện hướng dẫn về API declarativeNetRequest
API chrome.declarativeNetRequest
chặn hoặc sửa đổi các yêu cầu mạng bằng cách chỉ định các quy tắc khai báo. Điều này cho phép tiện ích sửa đổi các yêu cầu mạng mà không chặn các yêu cầu đó và xem nội dung của chúng, từ đó mang lại nhiều quyền riêng tư hơn cho người dùng. Việc sử dụng cũng khó khăn. Do đó, chúng tôi đã viết lại hướng dẫn theo cách mà chúng tôi cho là sẽ giúp bạn hiểu rõ hơn về cách triển khai các quy tắc khai báo. Hãy đọc phần mới tại đường liên kết ở trên.
Sử dụng tài khoản Google Analytics của bạn với Cửa hàng Chrome trực tuyến
Cửa hàng Chrome trực tuyến tích hợp với Google Analytics, cho phép bạn xem số liệu phân tích cho trang thông tin của mình trên Cửa hàng Chrome trực tuyến, ngoài chế độ xem được cung cấp trong Trang tổng quan dành cho nhà phát triển. Để biết thêm thông tin, hãy đọc Sử dụng tài khoản Google Analytics với Cửa hàng Chrome trực tuyến.
Chrome 115: Theo mặc định, DevTools sẽ bỏ qua các tập lệnh nội dung
Theo mặc định, các tập lệnh nội dung được chèn sẽ nằm trong danh sách bỏ qua của DevTools. Điều này không ảnh hưởng đến các điểm ngắt, nhưng có nghĩa là các tập lệnh nội dung sẽ được bỏ qua trong quá trình gỡ lỗi và các trường hợp ngoại lệ từ các tập lệnh này sẽ bị bỏ qua. Khi tập lệnh nội dung đang mở trong thẻ Nguồn, một biểu ngữ sẽ cảnh báo bạn nếu tập lệnh này đang bật và cung cấp lựa chọn xoá tập lệnh nội dung của bạn khỏi danh sách bỏ qua. Để tắt hành vi này, hãy mở Công cụ cho nhà phát triển, chuyển đến phần Cài đặt rồi chọn Danh sách bỏ qua. Để tìm hiểu thêm, hãy xem phần Tính năng mới trong Công cụ cho nhà phát triển.
Chrome 116 beta: Có nhiều tính năng hơn chúng tôi có thể trình bày tại đây
Chrome 116 là một bản phát hành lớn dành cho các tiện ích. Giờ đây, bạn có thể mở bảng điều khiển bên theo phương thức lập trình. Một phương thức mới giúp bạn tìm hiểu xem có tài liệu nào đang hoạt động ngoài màn hình hay không. Trình chạy dịch vụ đã có một số điểm cải tiến. Có đủ điểm cải tiến trong phiên bản 116 để chúng tôi viết một bài đăng trên blog. Chrome 116 đang ở giai đoạn thử nghiệm beta kể từ ngày 19 tháng 7.
Bài đăng trên blog: Những thay đổi trong Tiện ích Chrome
Chúng tôi vừa phát hành thông tin tổng quan về các thay đổi và điểm cải tiến đối với tiện ích trong năm nay. Bài đăng này thảo luận về các tính năng mới quan trọng của năm, bao gồm API Bảng điều khiển bên, các tính năng nâng cao cho worker dịch vụ và tài liệu ngoài màn hình. Bạn cũng sẽ được xem trước những nội dung mà chúng tôi đang triển khai trong quý này. Bài viết này liệt kê nhiều nội dung khác, kèm theo đường liên kết đến tất cả.
Hướng dẫn và mẫu mới: Tìm hiểu cách sử dụng Google Analytics 4 trong tiện ích Chrome
Chúng tôi đã xuất bản hướng dẫn và mẫu mới về Google Analytics và thông tin vị trí địa lý:
- Phiên bản cập nhật của hướng dẫn về Google Analytics, giải thích cách bạn có thể sử dụng Google Analytics 4 trong tiện ích Chrome. Chúng tôi cũng đã thêm một mẫu Google Analytics 4 đang hoạt động vào kho lưu trữ mẫu Github. Hãy xem
google-analytics.js
để biết mã liên quan đến Google Analytics. - Hướng dẫn mới về tính năng Định vị địa lý và 3 mẫu minh hoạ cách truy cập thông tin định vị địa lý trong worker dịch vụ, tập lệnh nội dung, cửa sổ bật lên và bảng điều khiển bên.
Chrome 115: Chỉ định nhiều lý do trong chrome.offscreen.createDocument()
Giờ đây, bạn có thể chỉ định nhiều enum reason
khi gọi chrome.offscreen.createDocument()
. Dùng lựa chọn này khi tài liệu ngoài màn hình được sử dụng cho nhiều mục đích. Trình duyệt sử dụng các lý do được cung cấp để xác định thời gian tồn tại của tài liệu ngoài màn hình.
Công cụ mới: Công cụ kiểm tra bản cập nhật tiện ích
Chúng tôi vừa phát hành Công cụ kiểm thử bản cập nhật tiện ích, một máy chủ cập nhật tiện ích cục bộ có thể dùng để kiểm thử bản cập nhật cho Tiện ích Chrome trong quá trình phát triển cục bộ, bao gồm cả việc cấp quyền. Công cụ này cho thấy quy trình cập nhật của người dùng, bao gồm cả việc tắt tiện ích cho đến khi người dùng cấp bất kỳ quyền mới nào được yêu cầu. Công cụ này đặc biệt hữu ích khi mô phỏng các thay đổi về quyền được yêu cầu khi cập nhật tiện ích từ Manifest V2 lên Manifest V3.
Chrome 114: API bảng điều khiển bên mới
Xin giới thiệu Side Panel API (API Bảng điều khiển bên) mới, một nền tảng đồng hành cho phép người dùng truy cập vào các công cụ cùng với nội dung mà họ đang duyệt xem. Để tìm hiểu thêm, hãy truy cập vào Tài liệu tham khảo về API Bảng điều khiển bên. Ngoài ra, chúng tôi đã thêm nhiều mẫu bảng điều khiển bên vào kho lưu trữ mẫu GitHub. Chúng tôi cũng chia sẻ thêm thông tin về bảng điều khiển bên trong bài đăng mới trên blog có tên là Thiết kế trải nghiệm người dùng vượt trội bằng API Bảng điều khiển bên mới. Chúng tôi cũng đã xem xét chính sách về nguyên tắc chất lượng và các phương pháp hay nhất để cung cấp thêm hướng dẫn về cách tạo tiện ích bảng điều khiển bên chất lượng cao.
Ý kiến phản hồi của bạn rất quan trọng khi xây dựng API này. Vui lòng chia sẻ ý kiến và yêu cầu về tính năng của bạn trong nhóm chromium. Hãy chú ý theo dõi thông tin cập nhật mới vì chúng tôi sẽ tiếp tục cải thiện API Bảng điều khiển bên.
Mẫu mới: WASM trong tiện ích
Có hai mẫu mới minh hoạ cách sử dụng WASM trong một tiện ích:
- Bài viết Sử dụng WASM trong Tệp kê khai V3 trình bày phương thức chung để đưa mô-đun WASM vào.
- Bài viết Sử dụng WASM làm mô-đun trong Tệp kê khai V3 cho biết cách sử dụng WASM trong mô-đun.
Cảm ơn đặc biệt đối với người đóng góp GitHub @daidr về các mẫu này.
Hướng dẫn mới về việc di chuyển sang Manifest V3
Chúng tôi đã cập nhật phần Các vấn đề đã biết trong hướng dẫn di chuyển sang Manifest V3 bằng danh sách mới nhất về các điểm thiếu sót trên nền tảng tiện ích mà chúng tôi dự định khắc phục trước khi công bố tiến trình mới về việc ngừng sử dụng Manifest V2.
Ghi âm và quay video bằng Manifest V3
Chúng tôi vừa xuất bản một bài viết mới có tên Ghi âm và chụp ảnh màn hình. Bài viết này đề cập đến việc ghi âm hoặc quay video từ một thẻ, cửa sổ hoặc màn hình trong Manifest V3. Bài viết này mô tả nhiều phương pháp ghi âm liên quan đến API chrome.tabCapture
và hàm getDisplayMedia()
.
Chrome 114: Tăng hạn mức storage.local
Chúng tôi đã tăng hạn mức cho tài sản storage.local
lên khoảng 10 MB. Điều này đã được đồng ý trong Nhóm cộng đồng về tiện ích web. Điều này giúp storage.local
phù hợp với storage.session
đã được thay đổi trong Chrome 112.
Hướng dẫn và trợ giúp về worker dịch vụ tiện ích mới
Trình chạy dịch vụ là một phần không thể thiếu của Tiện ích Chrome. Chúng tôi vừa phát hành một hướng dẫn giải thích các kiến thức cơ bản về cách đăng ký, gỡ lỗi và tương tác với Worker dịch vụ. Chúng tôi cũng thêm một Hướng dẫn về trình chạy dịch vụ mới để giải thích chi tiết hơn về các khái niệm quan trọng. Chúng tôi sẽ mở rộng phần này trong những tháng tới.
Mẹo khắc phục sự cố khác đối với các lỗi vi phạm liên quan đến Cửa hàng trên web
Để hỗ trợ việc phát hành trên Cửa hàng Chrome trực tuyến, chúng tôi đã thêm hướng dẫn mới về hai khía cạnh. Hướng dẫn về chức năng tối thiểu tập trung vào việc mang lại lợi ích cho người dùng và làm phong phú trải nghiệm duyệt web của họ. Hướng dẫn về quảng cáo liên kết là để người dùng biết về các tiện ích sử dụng đường liên kết hoặc mã của đơn vị liên kết để kiếm tiền, đồng thời cho phép họ kiểm soát một phần bằng cách yêu cầu người dùng thực hiện hành động trước khi thêm.
Hướng dẫn mới cho Trình chuyển đổi tệp kê khai tiện ích
Chúng tôi đã viết lại tệp README cho Trình chuyển đổi tệp kê khai tiện ích để giúp bạn dễ dàng xem những việc cần làm sau khi chạy công cụ này. Trình chuyển đổi này giúp di chuyển các tiện ích được tạo trên Manifest V2 sang Manifest V3. Tệp README mới mô tả chức năng của công cụ bằng các từ gần giống với các từ trong danh sách kiểm tra của hướng dẫn di chuyển. Trình chuyển đổi không làm được mọi việc, nhưng loại bỏ được nhiều tác vụ không cần đến quyết định của con người.
Chrome 113: Lý do mới cho tài liệu ngoài màn hình
Chúng tôi đã thêm hai loại lý do mới vào API Tài liệu ngoài màn hình. Sử dụng LOCAL_STORAGE
để truy cập vào API localStorage của nền tảng web. Sử dụng WORKER
khi tạo worker web.
Google Analytics 4 hiện đã có trong Trang tổng quan dành cho nhà phát triển
Trang tổng quan dành cho nhà phát triển Cửa hàng Chrome trực tuyến hiện hỗ trợ Google Analytics 4 (GA4). Chúng tôi đã đơn giản hoá quy trình thiết lập Google Analytics và giúp việc quản lý quyền truy cập cho nhà xuất bản nhóm trở nên đơn giản hơn. Nếu trước đây bạn đã sử dụng Google Universal Analytics để theo dõi hoạt động trên trang thông tin của mình trên Cửa hàng Play, thì bạn cần phải hành động trước ngày 1 tháng 7 năm 2023 để đảm bảo rằng bạn tiếp tục nhận được dữ liệu về trang thông tin của mình trên Cửa hàng Play. Để biết thêm thông tin, hãy xem bài đăng trên Nhóm Google Tiện ích của Chromium.
API Xử lý tệp ra mắt trên ChromeOS
Bạn có thể thử nghiệm File Handler API trên ChromeOS trong Canary cho phiên bản 112 và 113. API này cho phép các tiện ích trên ChromeOS mở các tệp có loại MIME và đuôi tệp được chỉ định. Để triển khai tính năng xử lý tệp, hãy thêm một bộ quy tắc vào manifest.json
. Tính năng này hoạt động giống như đối với các ứng dụng web tiến bộ. Để biết thêm thông tin, hãy xem bài viết khác trên trang web này.
Cách bật tính năng xử lý tệp:
- Kể từ phiên bản 112, hãy chạy Chrome bằng cờ
--enable-features=ExtensionWebFileHandlers
- Kể từ phiên bản 113, hãy dán
os://flags/#extension-web-file-handlers
vào hộp tìm kiếm của Chrome rồi chọn "Đã bật" trong trình đơn thả xuống.
Chúng tôi hy vọng sẽ ra mắt tính năng này trong Chrome 115 vào cuối tháng 6. Hãy theo dõi trang này để nắm bắt thông tin cập nhật.
Mẫu mới: khai báo động và chèn theo phương thức lập trình
Chúng tôi đã tạo một mẫu mới cho API chrome.scripting
. Mã này minh hoạ việc khai báo động, trong đó tập lệnh nội dung được đăng ký trong thời gian chạy và chèn theo phương thức lập trình, trong đó tập lệnh được thực thi trong một thẻ đã mở.
Mẫu mới: Các trường hợp sử dụng Yêu cầu mạng khai báo
Có 3 mẫu mới để minh hoạ về Declarative Net Request API (API Yêu cầu mạng khai báo). Mỗi ví dụ minh hoạ cách triển khai một trường hợp sử dụng. Hình ảnh đầu tiên cho thấy cách chặn cookie. Hai ví dụ còn lại minh hoạ việc chặn và chuyển hướng URL.
Chrome 112: Tăng hạn mức storage.session
Kể từ Chrome 112, hạn mức cho thuộc tính storage.session
đã tăng lên khoảng 10 MB. Điều này đã được đồng ý trong Nhóm cộng đồng về tiện ích web: https://github.com/w3c/webextensions/issues/350
Chrome 109: Tài liệu ngoài màn hình
Giờ đây, bạn có thể sử dụng tài liệu ngoài màn hình trong các tiện ích Manifest V3. Các giải pháp này hỗ trợ quá trình chuyển đổi từ trang nền sang trình chạy dịch vụ mở rộng bằng cách hỗ trợ các tính năng và API liên quan đến DOM. Để biết thêm thông tin, hãy đọc bài đăng trên blog.
Chrome 110: Tiện ích có được bật không
Phương thức chrome.action.isEnabled()
theo phương thức lập trình sẽ kiểm tra xem một tiện ích đã được bật cho một thẻ cụ thể hay chưa. Điều này giúp bạn không phải duy trì trạng thái bật của các thẻ. Phương thức mới này sẽ lấy một mã thẻ và một tham chiếu đến lệnh gọi lại, sau đó trả về một giá trị boolean. Có một hạn chế: các thẻ được tạo bằng chrome.declarativeContent
luôn trả về giá trị false.
(Không gian tên chrome.action
gần đây có các phương thức mới để kiểm soát sự xuất hiện của huy hiệu tiện ích. Để biết thêm thông tin, hãy xem bài viết Đặt màu huy hiệu.)
Chrome 110: Thay đổi về thời gian chờ ở trạng thái không hoạt động của trình chạy dịch vụ
Trước đây, một trình chạy dịch vụ tiện ích sẽ thường xuyên tắt vào thời điểm 5 phút. Chúng tôi đã thay đổi hành vi này để giống với thời gian hoạt động của worker trên web hơn. Worker dịch vụ tiện ích sẽ bị tắt sau 30 giây không hoạt động hoặc nếu một hoạt động đơn lẻ mất nhiều hơn 5 phút để xử lý. Để biết thêm thông tin, hãy xem bài viết Thời gian hoạt động của trình chạy dịch vụ tiện ích lâu hơn.
Bài đăng: Ngừng sử dụng Manifest V2
Chúng tôi đang xem xét tiến trình ngừng sử dụng Tệp kê khai V2 và các thử nghiệm dự kiến diễn ra vào đầu năm 2023 sẽ bị hoãn. Để biết thêm thông tin, hãy đọc nội dung cập nhật trong Nhóm Google tiện ích chromium-extensions.
Chrome 110: Đặt màu huy hiệu
Không gian tên chrome.action
có hai phương thức mới giúp bạn kiểm soát nhiều hơn đối với huy hiệu tiện ích giao diện. Phương thức setBadgeTextColor()
và getBadgeTextColor()
cho phép tiện ích thay đổi và truy vấn màu văn bản huy hiệu của biểu tượng thanh công cụ. Khi kết hợp với setBadgeBackgroundColor
và getBadgeBackgroundColor
, các phương thức mới này sẽ giúp bạn đảm bảo tính nhất quán về thiết kế và thương hiệu.
Bài đăng trên blog: Thông tin chi tiết hơn về quá trình chuyển đổi sang Manifest V3
Chúng tôi đã làm rõ tiến trình ngừng sử dụng Manifest V2. Tiến trình hỗ trợ của Manifest V2 cũng đã được cập nhật để phản ánh thông tin này.
Nội dung cập nhật về tài liệu: Các vấn đề đã biết khi di chuyển sang tệp kê khai Manifest V3
Chúng tôi đã tổng hợp danh sách các tính năng chính đang trong quá trình phát triển và các lỗi đang mở. Mục tiêu của chúng tôi khi tạo trang này là giúp nhà phát triển hiểu rõ hơn về trạng thái hiện tại của nền tảng và những tính năng mà họ có thể nhắm đến khi chuẩn bị cho tương lai.
Cửa hàng Chrome trực tuyến: Xoá tính năng tải hình ảnh "thẻ thông tin quảng bá lớn"
Cửa hàng Chrome trực tuyến đã xoá giao diện người dùng tải "thẻ thông tin quảng bá lớn" lên khỏi thẻ Trang thông tin trên Cửa hàng trong trang tổng quan dành cho nhà phát triển. Thay đổi này không ảnh hưởng đến trải nghiệm người dùng cuối vì những hình ảnh này không được sử dụng trong giao diện người dùng của người tiêu dùng. Hãy xem bài đăng về tiện ích chromium này để biết thêm thông tin chi tiết.
Chrome 106: Cho phép các trang trên URL file:// truy cập vào các tài nguyên có thể truy cập trên web
Các nguồn gốc mờ như iframe hộp cát và tính năng nhập động cũng có thể truy cập vào các tài nguyên có thể truy cập trên web, theo crbug.com/1219825#c11.
Chrome 106: Sửa lỗi cho phép đối số cuối cùng không chính xác trên một số hàm API không đồng bộ
Trước đây, tệp kê khai V3 gọi các API không đồng bộ có thể cung cấp đối số cuối cùng không hợp lệ và Chrome sẽ không gặp lỗi. Với bản sửa lỗi này, Chrome hiện sẽ báo lỗi chính xác và báo cáo rằng không có chữ ký nào khớp. Nhà phát triển nên kiểm tra các tiện ích của họ trên Canary để tìm lỗi trong trường hợp họ vô tình sử dụng chữ ký không chính xác cho lệnh gọi API sẽ bị lỗi này phá vỡ.
Bài đăng trên blog: Cải tiến số liệu phân tích của Cửa hàng Chrome trực tuyến
Cửa hàng Chrome trực tuyến đã cải tiến trải nghiệm phân tích mặt hàng cho Trang tổng quan dành cho nhà phát triển Cửa hàng Chrome trực tuyến. Trang tổng quan mới dễ hiểu hơn khi xem nhanh và tổng hợp những thông tin hữu ích nhất ở phần trên cùng. Đọc bài đăng trên blog để biết thêm thông tin.
Chrome 105: lời hứa cho API Danh tính
Các hàm trên Identity API hiện hỗ trợ các lệnh gọi dựa trên lời hứa. Điều này đi kèm với một thay đổi nhỏ đối với giao diện của identity.getAuthToken()
, trong đó lệnh trả về không đồng bộ được đặt thành lệnh gọi dựa trên lời hứa sẽ có "mã thông báo" và "grantedScopes" làm tham số trên một đối tượng (thay vì phiên bản lệnh gọi lại nhận các tham số này dưới dạng đối số riêng biệt cho lệnh gọi lại).
Chrome 104: API biểu tượng trang chủ mới cho Manifest V3
Giờ đây, các tiện ích Manifest V3 có thể truy cập vào biểu tượng trang chủ bằng cách sử dụng mẫu URL mới: chrome-extension://<id>/_favicon/
, trong đó chrome://favicons
của nền tảng Tệp kê khai V2. Hãy xem tài liệu về Favicon API để biết thêm thông tin.
Nội dung cập nhật về tài liệu: Thông tin tiết lộ về nhà giao dịch/người không phải nhà giao dịch
Thêm mã nhận dạng nhà phát triển là người bán/không phải người bán để thông báo cho nhà phát triển tự khai báo chính xác trạng thái người bán/không phải người bán.
Chrome 103: Wasm trong Tệp kê khai V3 yêu cầu wasm-unsafe-eval
Theo mặc định, Chrome không còn cấp script-src: wasm-unsafe-eval
cho tiện ích. Giờ đây, các tiện ích sử dụng WebAssembly phải thêm rõ ràng lệnh và giá trị này vào extension_pages
trong phần khai báo content_security_policy
.
Chrome 103: Thay đổi phím tắt MV3 có hiệu lực ngay lập tức
Khi thay đổi phím tắt của tiện ích Manifest V3 trên chrome://extensions/shortcuts
, các bản cập nhật hiện sẽ được áp dụng ngay lập tức. Trước đây, bạn phải tải lại tiện ích này thì thay đổi mới có hiệu lực.
Chrome 102: Tập lệnh nội dung động trong thế giới chính
Giờ đây, các tập lệnh nội dung được đăng ký động có thể chỉ định thế giới mà các thành phần sẽ được chèn vào. Hãy xem scripting.registerContentScripts()
để biết thông tin chi tiết.
Chrome 102: Trường tệp kê khai mới "optional_host_permissions"
Các tiện ích của Manifest V3 hiện có thể chỉ định khoá optional_host_permissions
trong manifest.json. Điều này cho phép tiện ích Manifest V3 khai báo các mẫu so khớp không bắt buộc cho máy chủ lưu trữ giống như tiện ích Manifest V2 có thể sử dụng khoá optional_permissions
.
Chrome 102: thuộc tính injectImmediately trong scripting.executeScript()
chrome.scripting.executeScript()
hiện chấp nhận thuộc tính injectImmediately
không bắt buộc trên đối số injection
. Nếu có và được đặt thành true, tập lệnh sẽ chèn vào mục tiêu càng sớm càng tốt, thay vì chờ document_idle
. Xin lưu ý rằng điều này không đảm bảo tập lệnh sẽ chèn trước khi trang tải vì trang tiếp tục tải trong khi lệnh gọi API đang được thực hiện.
Chrome 102: Hỗ trợ API thanh địa chỉ trong Manifest V3
Giờ đây, bạn có thể sử dụng API thanh địa chỉ trong các tiện ích dựa trên trình chạy dịch vụ. Trước đây, một số phương thức của API này sẽ gửi lệnh gọi do các phần phụ thuộc nội bộ vào các khả năng DOM.
Chrome 102: cho phép wasm-unsafe-eval trong CSP của Tệp kê khai V3
Giờ đây, các tiện ích Manifest V3 có thể bao gồm wasm-unsafe-eval
trong phần khai báo content_security_policy
. Thay đổi này cho phép các tiện ích Manifest V3 sử dụng WebAssembly.
Chrome 102: API storage.session mới
Giờ đây, các tiện ích Manifest V3 có thể sử dụng bộ nhớ trong storage.session .
Thông tin cập nhật về tài liệu: Khám phá mặt hàng trên Cửa hàng Chrome trực tuyến
Khám phá trên Cửa hàng Chrome trực tuyến cung cấp thông tin tổng quan về cách người dùng tìm thấy các mục trên Cửa hàng Chrome trực tuyến và cách các biên tập viên của chúng tôi chọn các mục để giới thiệu.
Chrome 101: Cải thiện điều kiện miền declarativeNetRequest
Chúng tôi đã cập nhật các điều kiện quy tắc declarativeNetRequest để cho phép các tiện ích nhắm mục tiêu yêu cầu hiệu quả hơn dựa trên miền "yêu cầu" và "bên khởi tạo" của yêu cầu. Các thuộc tính điều kiện liên quan là initiatorDomains
, excludedInitiatorDomains
, requestDomains
và excludedRequestDomains
. Hãy xem thêm chuỗi phần mở rộng chrome này.
Chrome 100: Khắc phục vấn đề với scripting.executeScript() trên các thẻ mới tạo
Khắc phục vấn đề lâu nay là việc gọi scripting.executeScript()
trên thẻ hoặc cửa sổ mới tạo có thể không thành công.
Chrome 100: cổng nhắn tin gốc giúp duy trì trình chạy dịch vụ
Việc kết nối với máy chủ nhắn tin gốc bằng chrome.runtime.connectNative()
trong worker dịch vụ của tiện ích sẽ giúp worker dịch vụ hoạt động miễn là cổng vẫn mở.
Chrome 100: omnibox.setDefaultSuggestion() hỗ trợ các lời hứa và lệnh gọi lại
Phương thức omnibox.setDefaultSuggestion()
hiện trả về một lời hứa (hứa hẹn) hoặc chấp nhận lệnh gọi lại để cho phép nhà phát triển xác định thời điểm đề xuất đã được đặt đúng cách.
Chrome 100: Hỗ trợ i18n.getMessage() trong trình thực thi dịch vụ tiện ích
API chrome.i18n.getMessage()
hiện được hỗ trợ trong ngữ cảnh trình chạy dịch vụ tiện ích.
Chrome 99: match_origin_as_fallback trong Canary
Tập lệnh nội dung hiện có thể chỉ định khoá match_origin_as_fallback
để chèn vào các khung có liên quan đến một khung phù hợp, bao gồm cả các khung có URL about:
, data:
, blob:
và filesystem:
. Hãy xem tài liệu về tập lệnh nội dung để biết thông tin chi tiết.
Chrome 99: hỗ trợ worker dịch vụ tiện ích cho file: schemes trong Canary
Giờ đây, các tiện ích Manifest V2 và Manifest V3 dựa trên trình chạy dịch vụ có thể sử dụng API Tìm nạp để yêu cầu URL lược đồ file:
. Việc truy cập vào các URL lược đồ file:
vẫn yêu cầu người dùng phải bật chế độ "Cho phép truy cập vào URL của tệp" cho tiện ích trong trang chrome://extensions
.
Chrome 99: hứa hẹn hỗ trợ API nhắn tin trong Canary
Tính năng hỗ trợ Lời hứa đã được thêm vào tabs.sendMessage
, runtime.sendMessage
và runtime.sendNativeMessage
cho các tiện ích được tạo cho Manifest V3.
Cập nhật tài liệu: Tài liệu về quy trình xem xét trên Cửa hàng Chrome trực tuyến
Thêm một trang tham khảo mới cung cấp thông tin tổng quan về quy trình xem xét của Cửa hàng Chrome trực tuyến và giải thích cách xử lý việc thực thi chính sách chương trình dành cho nhà phát triển.
Chrome 98: scripting.executeScript() và scripting.insertCSS() chấp nhận nhiều tệp
Các phương thức executeScript()
và insertCSS()
của API tập lệnh hiện chấp nhận nhiều tệp. Trước đây, các phương thức này yêu cầu một mảng có một mục nhập tệp.
Nội dung cập nhật về tài liệu: thông tin cập nhật về cách khắc phục sự cố liên quan đến lỗi vi phạm trong bài đánh giá
Chúng tôi đã cập nhật trang Khắc phục lỗi vi phạm trên Cửa hàng Chrome trực tuyến để cung cấp cho nhà phát triển hướng dẫn chi tiết hơn về các lý do thường gặp khiến ứng dụng bị từ chối.
Chrome 96: mở rộng tính năng hỗ trợ lời hứa cho thêm 27 API
Bản phát hành này chứa nhiều nội dung cập nhật về lời hứa hơn đáng kể so với mọi bản phát hành trước. Các bản cập nhật bao gồm cả API tiện ích chung và API tiện ích dành riêng cho ChromeOS. Mở rộng các phần sau để biết thông tin chi tiết.
API tiện ích
Một số API hiện hỗ trợ các lời hứa trong Tệp kê khai V3.
chrome.browsingData
chrome.commands
chrome.contentSettings
chrome.debugger
chrome.downloads
chrome.enterprise.hardwarePlatform
chrome.fontSettings
chrome.history
chrome.instanceID
chrome.permissions
chrome.processes
chrome.search
chrome.sessions
chrome.topSites
Ngoài ra, các API sử dụng nguyên mẫu ChromeSetting
hiện cũng hỗ trợ lời hứa. Thay đổi này sẽ ảnh hưởng đến các API sau.
API ChromeOS
chrome.certificateProvider
chrome.documentScan
chrome.enterprise.deviceAttributes
chrome.enterprise.networkingAttributes
chrome.fileBrowserHandler
chrome.fileSystemProvider
chrome.loginState
chrome.printingMetrics
chrome.wallpaper
Chrome 96: tập lệnh nội dung động
API chrome.scripting
hiện hỗ trợ đăng ký, cập nhật, huỷ đăng ký và lấy danh sách tập lệnh nội dung trong thời gian chạy. Trước đây, bạn chỉ có thể khai báo tĩnh tập lệnh nội dung trong tệp manifest.json của tiện ích hoặc chèn có lập trình bằng chrome.scripting.executeScript()
trong thời gian chạy.
Nội dung cập nhật về tài liệu: Tiến trình hỗ trợ Manifest V2
Tiến trình chuyển đổi từ Manifest V2 sang V3 đã được công bố trong bài đăng trên blog này và chúng tôi cũng đã phát hành một trang tiến trình chi tiết hơn.
Chrome 96: Quyền declarativeNetRequestWithHostAccess
Quyền declarativeNetRequestWithHostAccess
mới cho phép tiện ích sử dụng API chrome.declarativeNetRequest
trên các trang web mà tiện ích có quyền lưu trữ. Điều này cũng cho phép các tiện ích Manifest V2 hiện có sử dụng quyền máy chủ webRequest
, webRequestBlocking
và quyền dành riêng cho trang web di chuyển sang API chrome.declarativeNetRequest
mà không yêu cầu người dùng phê duyệt các quyền mới.
Chrome 95: chèn tập lệnh trực tiếp vào các trang
Phương thức executeScript()
của API chrome.scripting
hiện có thể chèn tập lệnh trực tiếp vào thế giới chính của trang. Trước đây, các tiện ích chỉ có thể chèn trực tiếp vào thế giới riêng biệt của tiện ích. Để biết thêm thông tin về các thế giới riêng biệt, hãy xem tài liệu về tập lệnh nội dung.
Chrome 95: hứa hẹn hỗ trợ Storage API
Các phương thức trên phiên bản Manifest V3 của API chrome.storage
hiện trả về các lời hứa.
Thông tin cập nhật về chính sách: thực thi tính năng xác minh 2 bước
Chúng tôi đã cập nhật bài đăng trên blog về nội dung cập nhật chính sách được xuất bản vào ngày 29 tháng 6 năm 2021 để sửa đổi tiến trình triển khai tính năng xác minh hai bước.
Chrome 94: thay đổi bộ quy tắc tĩnh của yêu cầu mạng khai báo
chrome.declarativeNetRequest
hiện hỗ trợ việc chỉ định tối đa 50 bộ quy tắc tĩnh (MAX_NUMBER_OF_STATIC_RULESETS) và bật tối đa 10 bộ quy tắc (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) cùng một lúc.
Chrome 93: hỗ trợ tính năng tách biệt nhiều nguồn gốc
Giờ đây, cả tiện ích Manifest V2 và Manifest V3 đều có thể chọn sử dụng tính năng tách biệt nhiều nguồn gốc. Tính năng này giới hạn những tài nguyên trên nhiều nguồn gốc có thể tải các trang của một tiện ích và cho phép sử dụng các tính năng của nền tảng web cấp thấp như SharedArrayBuffer
. Bạn phải chọn sử dụng kể từ Chrome 95.
Thông tin cập nhật về chính sách: đã cập nhật chính sách chương trình dành cho nhà phát triển
Chúng tôi đã cập nhật Chính sách chương trình dành cho nhà phát triển của Cửa hàng Chrome trực tuyến để làm rõ các chính sách về nội dung trùng lặp, nội dung rác và chiến thuật cài đặt lừa đảo. Bản cập nhật này cũng đưa ra một yêu cầu mới về xác minh 2 bước để xuất bản lên Cửa hàng Chrome trực tuyến. Đọc bài đăng trên blog để biết thêm thông tin.
Bài đăng trên blog: hành động của tiện ích trong Manifest V3
Các tiện ích Chrome đã có API chrome.browserAction
và chrome.pageActions
trong nhiều năm, nhưng Tệp kê khai
V3 đã thay thế cả hai bằng API chrome.actions
chung. Bài đăng này khám phá lịch sử của các API này và những thay đổi trong Manifest V3. Đọc bài đăng.
Bài đăng trên blog: ra mắt chrome.scripting
API chrome.scripting
là một API Manifest V3 mới tập trung vào tập lệnh. Trong bài đăng này, chúng ta sẽ tìm hiểu lý do dẫn đến thay đổi này và xem xét kỹ hơn các tính năng mới của nó. Đọc bài đăng.
Chrome 92: hỗ trợ worker dịch vụ mô-đun
Chrome hiện hỗ trợ các mô-đun JavaScript trong worker dịch vụ. Cách chỉ định một mô-đun trong tệp kê khai:
"background": {
"service_worker": "script.js",
"type": "module"
}
Thao tác này sẽ tải tập lệnh worker dưới dạng mô-đun ES, cho phép bạn sử dụng từ khoá import
trong tập lệnh của worker để nhập các mô-đun khác.
Chrome 91: chrome.action.getUserSettings()
Phương thức chrome.action.getUserSettings()
mới cho phép các tiện ích xác định xem người dùng đã ghim tiện ích vào thanh công cụ chính hay chưa.
Chrome 90: chrome.scripting.removeCSS()
Phương thức chrome.scripting.removeCSS()
mới cho phép các tiện ích xoá CSS đã được chèn trước đó thông qua chrome.scripting.insertCSS()
. Phương thức này thay thế chrome.tabs.removeCSS()
.
Chrome 90: trả về các lời hứa từ scripting.executeScript()
chrome.scripting.executeScript()
hiện hỗ trợ trả về các lời hứa. Nếu giá trị kết quả của quá trình thực thi tập lệnh là một lời hứa, thì Chrome
sẽ chờ lời hứa đó được thực hiện và trả về giá trị kết quả.
Chrome 90: Các kết quả chrome.scripting.executeScript() bao gồm frameId
Kết quả được trả về từ chrome.scripting.executeScript()
hiện bao gồm frameId.
Thuộc tính frameId
cho biết khung hình mà kết quả đến từ đó, cho phép các tiện ích dễ dàng liên kết kết quả với từng khung hình khi chèn vào nhiều khung hình.
Chrome 89: API mới để quản lý các nhóm thẻ
API chrome.tabGroups
mới và các chức năng mới trong chrome.tabs
cho phép các tiện ích đọc và thao tác với các nhóm thẻ.
Yêu cầu Manifest V3.
Chrome 89: quyền có thể tuỳ chỉnh cho các tài nguyên có thể truy cập trên web
Định nghĩa về Tài nguyên có thể truy cập trên web trong Manifest V3 đã thay đổi để cho phép các tiện ích hạn chế quyền truy cập vào tài nguyên dựa trên nguồn gốc hoặc mã tiện ích của người yêu cầu.
Bài đăng trên blog: Trình chuyển đổi tệp kê khai tiện ích
Nhóm Tiện ích Chrome đã phát hành mã nguồn mở "Extension Manifest Converter" (Trình chuyển đổi tệp kê khai tiện ích), một công cụ Python tự động hoá một số khía cạnh cơ học của việc chuyển đổi tiện ích sang tệp kê khai V3. Hãy xem bài đăng về thông báo này trên blog và tải thông tin này xuống từ GitHub.
Chrome 88: Phát hành rộng rãi Manifest V3
Tệp kê khai V3 là một bản cập nhật lớn cho nền tảng tiện ích; hãy xem phần Tổng quan về tệp kê khai V3 để biết thông tin tóm tắt về các tính năng mới và thay đổi. Các tiện ích có thể tiếp tục sử dụng Manifest V2 trong thời gian này, nhưng phiên bản này sẽ ngừng hoạt động trong tương lai gần. Bạn nên sử dụng Manifest V3 cho mọi tiện ích mới và bắt đầu di chuyển các tiện ích hiện có sang Manifest V3 càng sớm càng tốt.