chrome.types

Mô tả

API chrome.types chứa các nội dung khai báo loại cho Chrome.

Cài đặt Chrome

Loại ChromeSetting cung cấp một tập hợp hàm chung (get(), set()clear()) cũng như nhà xuất bản sự kiện (onChange) cho các chế độ cài đặt của trình duyệt Chrome. Cài đặt proxy các ví dụ 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 giữa ba phạm vi khác nhau của chế độ cài đặt trình duyệt:

regular
Các chế độ cài đặt được đặt trong phạm vi regular áp dụng cho các cửa sổ trình duyệt thông thường và được chế độ ẩn danh kế thừa cửa sổ nếu chúng không bị ghi đè. Các chế độ cài đặt này được lưu vào ổ đĩa và vẫn giữ nguyên cho đến chúng sẽ bị tiện ích quản lý xoá hoặc tiện ích quản lý bị vô hiệu hoá hay gỡ cài đặt.
incognito_persistent
Các chế độ cài đặt được thiết lập trong phạm vi incognito_persistent chỉ áp dụng cho cửa sổ ẩn danh. Đối với những quảng cáo này, ghi đè chế độ cài đặt regular. Các chế độ cài đặt này được lưu trữ vào ổ đĩa và vẫn giữ nguyên cho đến khi bị tiện ích quản lý xoá, hoặc tiện ích quản lý đã bị vô hiệu hoá 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_only chỉ áp dụng cho cửa sổ ẩn danh. Đối với những quảng cáo này, ghi đè chế độ cài đặt regularincognito_persistent. Các cài đặt này không được lưu trữ vào đĩa và sẽ bị xoá khi cửa sổ ẩn danh cuối cùng đóng. Bạn chỉ có thể đặt tối thiểu một cửa sổ ẩn danh đang mở.

Quyền ưu tiên

Chrome quản lý chế độ cài đặt trên nhiều lớp. Danh sách sau đây mô tả các lớp có thể tác động đến chế độ cài đặt hiệu quả theo thứ tự ưu tiên tăng dần.

  1. Chế độ cài đặt do hệ điều hành cung cấp
  2. Tham số dòng lệnh
  3. Chế độ cài đặt do tiện ích cung cấp
  4. Chính sách

Như danh sách này ngụ ý, các chính sách có thể ghi đè mọi thay đổi mà bạn chỉ định với tiện ích của mình. 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 việc chế độ cài đặt này có bị ghi đè hay không.

Như đã thảo luận trước đó, 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à chế độ ẩn danh . Ví dụ sau minh hoạ hành vi. Giả sử không có chính sách nào ghi đè và một tiện ích có thể thiết lập chế độ cài đặt cho các cửa sổ thông thường (R) cũng như các chế độ cài đặt cho 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 cho 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ửa sổ ẩn danh. Cửa sổ thông thường sử dụng cài đặt được xác định bởi các lớp dưới (tuỳ chọn dòng lệnh và cài đặt hệ thống).
  • Nếu cả (R)(I) được đặt, thì các chế độ cài đặt tương ứng sẽ được sử dụng cho chế độ ẩn danh và thông thường .

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ài đặt gần đây nhất đượ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), cài đặt của các cửa sổ thông thường có thể được xác định bằng lệnh được cài đặt trước đó tiện ích.

Giá trị hiệu quả của một chế độ cài đặt là giá trị nhận được sau khi xem xét các quy tắc ưu tiên. Nó Chrome sử dụng.

Loại

ChromeSetting

Giao diện cho phép truy cập vào một chế độ cài đặt của trình duyệt Chrome. Hãy xem accessibilityFeatures để biết ví dụ.

Thuộc tính

  • onChange

    Sự kiện<functionvoidvoid>

    Được kích hoạt sau khi chế độ cài đặt thay đổi.

    Hàm onChange.addListener có dạng như sau:

    (callback: function) => {...}

    • số gọi lại

      hàm

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

      (details: object) => void

      • chi tiết

        đối tượng

        • incognitoSpecific

          boolean 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 sẽ chỉ xuất hiện nếu người dùng đã bật tiện ích ở chế độ ẩn danh.

        • levelOfControl

          Mức độ kiểm soát chế độ cài đặt.

        • value

          T

          Giá trị của chế độ cài đặt sau khi thay đổi.

  • xóa

    void

    Lời hứa

    Xoá chế độ cài đặt, khôi phục mọi giá trị mặc định.

    Hàm clear có dạng như sau:

    (details: object, callback?: function) => {...}

    • chi tiết

      đối tượng

      Chế độ cài đặt cần xoá.

      • phạm vi

        ChromeSettingScope không bắt buộc

        Nơi xoá chế độ cài đặt (mặc định: thông thường).

    • số gọi lại

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

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

      () => void

    • returns

      Lời hứa<vô hiệu>

      Chrome 96 trở lên

      Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

  • get

    void

    Lời hứa

    Nhận giá trị của một chế độ cài đặt.

    Hàm get có 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 danh

        boolean không bắt buộc

        Liệu có trả về giá trị áp dụng cho phiên ẩn danh hay không (mặc định là false).

    • số gọi lại

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

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

      (details: object) => void

      • chi tiết

        đối tượng

        Thông tin chi tiết về giá trị hiện tại có hiệu lực.

        • incognitoSpecific

          boolean không bắt buộc

          Liệu giá trị hiệu quả có dành riêng cho phiên ẩn danh hay không. Thuộc tính này sẽ chỉ xuất hiện nếu thuộc tính incognito trong tham số details của get() là true.

        • levelOfControl

          Mức độ kiểm soát chế độ cài đặt.

        • value

          T

          Giá trị của chế độ cài đặt.

    • returns

      Promise&lt;object&gt;

      Chrome 96 trở lên

      Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

  • đặt

    void

    Lời hứa

    Đặt giá trị của một chế độ cài đặt.

    Hàm set có dạng như sau:

    (details: object, callback?: function) => {...}

    • chi tiết

      đối tượng

      Chế độ cài đặt nào cần thay đổi.

      • phạm vi

        ChromeSettingScope không bắt buộc

        Nơi đặt chế độ cài đặt (mặc định: thông thường).

      • value

        T

        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 nên đặt giá trị thuộc một loại khác.

    • số gọi lại

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

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

      () => void

    • returns

      Lời hứa<vô hiệu>

      Chrome 96 trở lên

      Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

ChromeSettingScope

Chrome 44 trở lên

Phạm vi áp dụng chế độ cài đặt Chrome. Một trong số

  • 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ế độ cài đặt chỉ dành cho hồ sơ thông thường (không được hồ sơ ẩn danh kế thừa),
  • 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 mà bạn chỉ có thể thiết lập 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à ẩn danh).

Enum

"regular"

"regular_only"

"anonymous_persistent"

"anonymous_session_only"

LevelOfControl

Chrome 44 trở lên

Một trong số

  • not\_controllable: không được bất kỳ tiện ích nào kiểm soát
  • controlled\_by\_other\_extensions: được kiểm soát bởi các tiện ích có mức độ ưu tiên cao hơn
  • controllable\_by\_this\_extension: có thể được kiểm soát bằng tiện ích này
  • controlled\_by\_this\_extension: do tiện ích này kiểm soát

Enum

"not_controllable"

&quot;controlled_by_other_extensions&quot;

&quot;controllable_by_this_extension&quot;

&quot;controlled_by_this_extension&quot;