chrome.bluetooth

Mô tả

Dùng API chrome.bluetooth để kết nối với một thiết bị Bluetooth. Tất cả hàm đều báo cáo lỗi qua chrome.runtime.lastError.

Tệp kê khai

Bạn phải khai báo các khoá sau trong tệp kê khai để sử dụng API này.

"bluetooth"

Loại

AdapterState

Thuộc tính

  • xử lý

    string

    Địa chỉ của bộ chuyển đổi có định dạng "XX:XX:XX:XX:XX:XX".

  • có sẵn

    boolean

    Cho biết liệu bộ chuyển đổi có dùng được hay không (tức là đã bật).

  • khám phá

    boolean

    Cho biết liệu bộ chuyển đổi có đang phát hiện được hay không.

  • tên

    string

    Tên của bộ chuyển đổi mà con người có thể đọc được.

  • đã bật

    boolean

    Cho biết bộ sạc có điện hay không.

BluetoothFilter

Chrome 67 trở lên

Thuộc tính

  • filterType

    FilterType không bắt buộc

    Loại bộ lọc để áp dụng cho danh sách thiết bị. Mặc định là tất cả.

  • giới hạn

    số không bắt buộc

    Số lượng thiết bị Bluetooth tối đa cần trả về. Giá trị mặc định là 0 (không giới hạn) nếu bạn không chỉ định.

Device

Thuộc tính

  • xử lý

    string

    Địa chỉ của thiết bị có định dạng "XX:XX:XX:XX:XX:XX".

  • batteryPercentage

    số không bắt buộc

    Chrome 77 trở lên

    Pin còn lại của thiết bị.

  • có thể kết nối

    boolean không bắt buộc

    Chrome 48 trở lên

    Cho biết thiết bị có kết nối được hay không.

  • đã kết nối

    boolean không bắt buộc

    Cho biết liệu thiết bị hiện có kết nối với hệ thống hay không.

  • đang kết nối

    boolean không bắt buộc

    Chrome 48 trở lên

    Cho biết liệu thiết bị hiện có đang kết nối với hệ thống hay không.

  • deviceClass

    số không bắt buộc

    Lớp của thiết bị, trường bit được xác định bởi http://www.bluetooth.org/en-us/specification/assigned-numbers/base Band.

  • deviceId

    số không bắt buộc

  • inquiryRssi

    số không bắt buộc

    Chrome 44 trở lên

    Cường độ tín hiệu nhận được, tính bằng dBm. Trường này có sẵn và chỉ hợp lệ trong quá trình khám phá. Ngoài thời gian khám phá, giá trị của thuộc tính này không được chỉ định.

  • inquiryTxPower

    số không bắt buộc

    Chrome 44 trở lên

    Mức công suất truyền. Trường này chỉ có sẵn cho các thiết bị LE có trường này trong AD. Dữ liệu này chỉ có sẵn và chỉ hợp lệ trong quá trình khám phá.

  • tên

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

    Tên thiết bị mà con người có thể đọc được.

  • đã ghép nối

    boolean không bắt buộc

    Cho biết thiết bị có được ghép nối với hệ thống hay không.

  • productId

    số không bắt buộc

  • phương tiện giao thông

    Phương tiện giao thông không bắt buộc

    Chrome 76 trở lên

    Loại truyền tải của thiết bị Bluetooth.

  • loại

    DeviceType không bắt buộc

    Loại thiết bị, nếu Chrome nhận dạng được. Mã này được lấy từ trường deviceClass và chỉ đại diện cho một phần nhỏ trong số các loại thiết bị có thể có. Khi không chắc chắn, bạn nên sử dụng trực tiếp trường deviceClass.

  • uuids

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

    Mã nhận dạng duy nhất (UUID) của giao thức, hồ sơ và dịch vụ mà thiết bị quảng cáo. Đối với các thiết bị Bluetooth cổ điển, danh sách này được lấy từ dữ liệu EIR và bảng SDP. Đối với các thiết bị sử dụng năng lượng thấp, danh sách này được lấy từ các dịch vụ chính của AD và GATT. Đối với các thiết bị chế độ kép, bạn có thể lấy thông tin này từ cả hai.

  • vendorId

    số không bắt buộc

  • vendorIdSource

    VendorIdSource không bắt buộc

    Bản ghi Mã thiết bị của thiết bị (nếu có).

DeviceType

Các loại thiết bị phổ biến được Chrome công nhận.

Enum

"computer"

"điện thoại"

"modem"

"audio"

"carAudio"

"video"

"thiết bị ngoại vi"

"cần điều khiển"

"gamepad"

"bàn phím"

"chuột"

"máy tính bảng"

"keyboardMouseCombo"

FilterType

Chrome 67 trở lên

Các loại để lọc thiết bị Bluetooth.

Enum

"tất cả"

"đã biết"

Transport

Chrome 76 trở lên

Loại truyền tải của thiết bị Bluetooth.

Enum

"không hợp lệ"

"cổ điển"

"le"

"kép"

VendorIdSource

Cơ quan phân bổ cho mã nhà cung cấp.

Enum

"bluetooth"

"usb"

Phương thức

getAdapterState()

Lời hứa
chrome.bluetooth.getAdapterState(
  callback?: function,
)

Nhận thông tin về bộ điều hợp Bluetooth.

Tham số

  • số gọi lại

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

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

    (adapterInfo: AdapterState) => void

    • adapterInfo

      Đối tượng chứa thông tin về bộ chuyển đổi.

Giá trị trả về

  • Promise<AdapterState>

    Chrome 91 trở lên

    Lời hứa 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.

getDevice()

Lời hứa
chrome.bluetooth.getDevice(
  deviceAddress: string,
  callback?: function,
)

Nhận thông tin về thiết bị Bluetooth mà hệ thống đã biết.

Tham số

  • deviceAddress

    string

    Địa chỉ của thiết bị cần nhận.

  • số gọi lại

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

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

    (deviceInfo: Device) => void

    • deviceInfo

      Đối tượng chứa thông tin thiết bị.

Giá trị trả về

  • Promise<Device>

    Chrome 91 trở lên

    Lời hứa 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.

getDevices()

Lời hứa
chrome.bluetooth.getDevices(
  filter?: BluetoothFilter,
  callback?: function,
)

Nhận danh sách các thiết bị Bluetooth mà hệ thống đã biết, bao gồm cả các thiết bị đã ghép nối và thiết bị mới phát hiện thấy gần đây.

Tham số

  • filter

    BluetoothFilter không bắt buộc

    Chrome 67 trở lên

    Một số tiêu chí để lọc danh sách các thiết bị Bluetooth được trả về. Nếu bạn không đặt hoặc đặt bộ lọc thành {}, thì danh sách thiết bị được trả về sẽ chứa mọi thiết bị Bluetooth. Hiện tại, tính năng này chỉ được hỗ trợ trong ChromeOS. Đối với các nền tảng khác, hệ thống sẽ trả về một danh sách đầy đủ.

  • số gọi lại

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

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

    (deviceInfos: Device[]) => void

    • deviceInfos

      Mảng chứa đối tượng chứa thông tin thiết bị.

Giá trị trả về

  • Cam kết<Thiết bị[]>

    Chrome 91 trở lên

    Lời hứa 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.

startDiscovery()

Lời hứa
chrome.bluetooth.startDiscovery(
  callback?: function,
)

Bắt đầu khám phá. Các thiết bị mới phát hiện sẽ được trả về thông qua sự kiện onDeviceAdded. Các thiết bị được phát hiện trước đó mà bộ chuyển đổi đã biết phải được lấy bằng getDevices và sẽ chỉ được cập nhật bằng sự kiện onDeviceChanged nếu thông tin về các thiết bị này thay đổi.

Chiến dịch Khám phá sẽ không bắt đầu được nếu ứng dụng này đã gọi startDiscovery. Chiến dịch Khám phá có thể cần đến nhiều tài nguyên: nên gọi dừng Discovery càng sớm càng tốt.

Tham số

  • số gọi lại

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

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

    () => void

Giá trị trả về

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

    Chrome 91 trở lên

    Lời hứa 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.

stopDiscovery()

Lời hứa
chrome.bluetooth.stopDiscovery(
  callback?: function,
)

Dừng khám phá.

Tham số

  • số gọi lại

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

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

    () => void

Giá trị trả về

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

    Chrome 91 trở lên

    Lời hứa 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.

Sự kiện

onAdapterStateChanged

chrome.bluetooth.onAdapterStateChanged.addListener(
  callback: function,
)

Được kích hoạt khi trạng thái của bộ điều hợp Bluetooth thay đổi.

Tham số

  • số gọi lại

    hàm

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

    (state: AdapterState) => void

onDeviceAdded

chrome.bluetooth.onDeviceAdded.addListener(
  callback: function,
)

Được kích hoạt khi có thông tin về thiết bị Bluetooth mới.

Tham số

  • số gọi lại

    hàm

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

    (device: Device) => void

onDeviceChanged

chrome.bluetooth.onDeviceChanged.addListener(
  callback: function,
)

Được kích hoạt khi thông tin về một thiết bị Bluetooth đã biết thay đổi.

Tham số

  • số gọi lại

    hàm

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

    (device: Device) => void

onDeviceRemoved

chrome.bluetooth.onDeviceRemoved.addListener(
  callback: function,
)

Được kích hoạt khi một thiết bị Bluetooth được phát hiện trước đó nằm ngoài phạm vi một thời gian đủ lâu để bị xem là không hoạt động trở lại và khi một thiết bị đã ghép nối bị xoá.

Tham số

  • số gọi lại

    hàm

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

    (device: Device) => void