Mô tả
API chrome.types chứa các khai báo kiểu cho Chrome.
Cài đặt Chrome
Nguyên mẫu ChromeSetting cung cấp một nhóm các hàm chung (get(), set() và clear()) cũng như một trình phát sự kiện (onChange) cho các chế độ cài đặt của trình duyệt Chrome. Ví dụ về chế độ cài đặt proxy minh hoạ cách sử dụng các hàm này.
Phạm vi và vòng đời
Chrome phân biệt 3 phạm vi cài đặt trình duyệt:
- regular
- Các chế độ cài đặt được đặt trong phạm vi regularsẽ áp dụng cho các cửa sổ trình duyệt thông thường và được các cửa sổ ẩn danh kế thừa nếu không bị ghi đè. Các chế độ cài đặt này được lưu trữ vào ổ đĩa và vẫn được giữ nguyên cho đến khi tiện ích chi phối xoá chúng hoặc tiện ích chi phối bị tắt hoặc gỡ cài đặt.
- incognito_persistent
- Các chế độ cài đặt được thiết lập trong phạm vi incognito_persistentchỉ áp dụng cho các cửa sổ ẩn danh. Đối với những chế độ cài đặt này, chúng sẽ ghi đè chế độ cài đặtregular. Các chế độ cài đặt này được lưu trữ vào đĩa và vẫn giữ nguyên cho đến khi tiện ích chi phối xoá chúng hoặc tiện ích chi phối bị tắt hoặc gỡ cài đặt.
- incognito_session_only
- Các chế độ cài đặt được thiết lập trong phạm vi incognito_session_onlychỉ áp dụng cho các cửa sổ ẩn danh. Đối với những chế độ cài đặt này, chúng sẽ ghi đè chế độ cài đặtregularvàincognito_persistent. Các chế độ cài đặt này không được lưu trữ trên ổ đĩa và sẽ bị xoá khi cửa sổ ẩn danh cuối cùng đóng. Bạn chỉ có thể đặt các chế độ này khi có ít nhất một cửa sổ ẩn danh đang mở.
Quyền ưu tiên
Chrome quản lý các chế độ cài đặt trên nhiều lớp. Danh sách sau đây mô tả các lớp có thể ảnh hưởng đến chế độ cài đặt hiệu quả, theo thứ tự tăng dần về mức độ ưu tiên.
- Chế độ cài đặt hệ thống do hệ điều hành cung cấp
- Tham số dòng lệnh
- Các chế độ cài đặt do tiện ích cung cấp
- Chính sách
Như danh sách này cho thấy, các chính sách có thể thay thế mọi thay đổi mà bạn chỉ định bằng tiện ích. Bạn có thể dùng hàm get() để xác định xem tiện ích của bạn có thể cung cấp một chế độ cài đặt hay không hoặc liệu chế độ cài đặt này có bị ghi đè hay không.
Như đã thảo luận ở trên, Chrome cho phép sử dụng các chế độ cài đặt khác nhau cho cửa sổ thông thường và cửa sổ ẩn danh. Ví dụ sau đây minh hoạ hành vi này. Giả sử không có chính sách nào ghi đè các chế độ cài đặt và một tiện ích có thể đặt chế độ cài đặt cho các cửa sổ thông thường (R) và chế độ cài đặt cho các cửa sổ ẩn danh (I).
- Nếu bạn chỉ đặt (R), thì các chế độ cài đặt này sẽ có hiệu lực đối với cả cửa sổ thông thường và cửa sổ ẩn danh.
- Nếu bạn chỉ đặt (I), thì các chế độ cài đặt này chỉ có hiệu lực đối với các cửa sổ ẩn danh. Các cửa sổ thông thường sử dụng chế độ cài đặt do các lớp dưới xác định (tuỳ chọn dòng lệnh và chế độ cài đặt hệ thống).
- Nếu bạn đặt cả (R) và (I), thì các chế độ cài đặt tương ứng sẽ được dùng cho cửa sổ thông thường và cửa sổ ẩn danh.
Nếu hai hoặc nhiều tiện ích muốn đặt cùng một chế độ cài đặt thành các giá trị khác nhau, thì tiện ích được cài đặt gần đây nhất sẽ được ưu tiên hơn các tiện ích khác. Nếu tiện ích được cài đặt gần đây nhất chỉ đặt (I), thì các tiện ích đã cài đặt trước đó có thể xác định chế độ cài đặt của các cửa sổ thông thường.
Giá trị hiệu quả của một chế độ cài đặt là giá trị thu được sau khi xem xét các quy tắc về quyền ưu tiên. Chrome sử dụng công cụ này.
Loại
ChromeSetting
Một giao diện cho phép truy cập vào chế độ cài đặt trình duyệt Chrome. Hãy xem accessibilityFeatures để biết ví dụ.
Thuộc tính
- 
    onChangeEvent<functionvoidvoid> Được kích hoạt sau khi chế độ cài đặt thay đổi. Hàm onChange.addListenercó dạng như sau:(callback: function) => {...} - 
    callbackhàm Tham số callbackcó dạng như sau:(details: object) => void - 
    chi tiếtđối tượng - 
    incognitoSpecificboolean không bắt buộc Liệu giá trị đã thay đổi có dành riêng cho phiên ẩn danh hay không. Thuộc tính này chỉ xuất hiện nếu người dùng đã bật tiện ích ở chế độ ẩn danh. 
- 
    levelOfControlMức độ kiểm soát của chế độ cài đặt. 
- 
    valueT Giá trị của chế độ cài đặt sau khi thay đổi. 
 
- 
    
 
- 
    
 
- 
    
- 
    xóavoid PromiseXoá chế độ cài đặt, khôi phục mọi giá trị mặc định. Hàm clearcó dạng như sau:(details: object, callback?: function) => {...} - 
    chi tiếtđối tượng Chế độ cài đặt cần xoá. - 
    phạm viChromeSettingScope không bắt buộc Nơi xoá chế độ cài đặt (mặc định: thông thường). 
 
- 
    
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
 - 
            returnsPromise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
 
- 
    
- 
    getvoid PromiseLấy giá trị của một chế độ cài đặt. Hàm getcó dạng như sau:(details: object, callback?: function) => {...} - 
    chi tiếtđối tượng Chế độ cài đặt cần cân nhắc. - 
    ẩn danhboolean không bắt buộc Có trả về giá trị áp dụng cho phiên ẩn danh hay không (mặc định là false). 
 
- 
    
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(details: object) => void - 
    chi tiếtđối tượng Thông tin chi tiết về giá trị hiện đang có hiệu lực. - 
    incognitoSpecificboolean không bắt buộc Giá trị có hiệu lực có dành riêng cho phiên ẩn danh hay không. Thuộc tính này chỉ xuất hiện nếu thuộc tính incognitotrong tham sốdetailscủaget()là true.
- 
    levelOfControlMức độ kiểm soát của chế độ cài đặt. 
- 
    valueT Giá trị của chế độ cài đặt. 
 
- 
    
 
- 
    
 - 
            returnsPromise<object> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
 
- 
    
- 
    đặtvoid PromiseĐặt giá trị của một chế độ cài đặt. Hàm setcó dạng như sau:(details: object, callback?: function) => {...} - 
    chi tiếtđối tượng Chế độ cài đặt cần thay đổi. - 
    phạm viChromeSettingScope không bắt buộc Nơi đặt chế độ cài đặt (mặc định: regular). 
- 
    valueT Giá trị của chế độ cài đặt. Xin lưu ý rằng mỗi chế độ cài đặt đều có một loại giá trị cụ thể, được mô tả cùng với chế độ cài đặt. Tiện ích không được đặt giá trị thuộc một loại khác. 
 
- 
    
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
 - 
            returnsPromise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
 
- 
    
ChromeSettingScope
Phạm vi của ChromeSetting. Một trong
- regular: chế độ cài đặt cho hồ sơ thông thường (được hồ sơ ẩn danh kế thừa nếu không bị ghi đè ở nơi khác),
- regular\_only: chỉ áp dụng cho hồ sơ thông thường (hồ sơ ẩn danh không kế thừa chế độ cài đặt này),
- incognito\_persistent: chế độ cài đặt cho hồ sơ ẩn danh vẫn tồn tại sau khi trình duyệt khởi động lại (ghi đè các lựa chọn ưu tiên thông thường),
- incognito\_session\_only: chế độ cài đặt cho hồ sơ ẩn danh chỉ có thể được đặt trong phiên ẩn danh và sẽ bị xoá khi phiên ẩn danh kết thúc (ghi đè các lựa chọn ưu tiên thông thường và incognito_persistent).
Enum
"regular" 
 
"regular_only" 
 
"incognito_persistent" 
 
"incognito_session_only" 
 
LevelOfControl
Một trong
- not\_controllable: không thể được kiểm soát bởi bất kỳ tiện ích nào
- controlled\_by\_other\_extensions: do các tiện ích có mức độ ưu tiên cao hơn kiểm soát
- controllable\_by\_this\_extension: có thể được tiện ích này kiểm soát
- controlled\_by\_this\_extension: do tiện ích này kiểm soát
Enum
"not_controllable" 
 
"controlled_by_other_extensions" 
 
"controllable_by_this_extension" 
 
"controlled_by_this_extension"