Mô tả
Sử dụng API chrome.bluetooth
để kết nối với một thiết bị Bluetooth. Tất cả các hàm đều báo cáo lỗi thông qua chrome.runtime.lastError.
Tệp kê khai
Loại
AdapterState
Thuộc tính
-
xử lý
chuỗi
Địa chỉ của bộ chuyển đổi, theo định dạng "XX:XX:XX:XX:XX:XX".
-
có sẵn
boolean
Cho biết liệu bộ chuyển đổi có hoạt động (tức là được bật) hay không.
-
khám phá
boolean
Cho biết liệu bộ chuyển đổi có đang khám phá hay không.
-
tên
chuỗi
Tên của bộ chuyển đổi mà con người có thể đọc được.
-
được cung cấp
boolean
Cho biết bộ chuyển đổi có nguồn điện hay không.
BluetoothFilter
Thuộc tính
-
filterType
FilterType không bắt buộc
Loại bộ lọc cần áp dụng cho danh sách thiết bị. Giá trị mặc định là tất cả.
-
giới hạn
number 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ý
chuỗi
Địa chỉ của thiết bị, theo định dạng "XX:XX:XX:XX:XX:XX".
-
batteryPercentage
number không bắt buộc
Chrome 77 trở lênLượng 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ênCho biết liệu 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ênCho biết liệu thiết bị có đang kết nối với hệ thống hay không.
-
deviceClass
number không bắt buộc
Lớp của thiết bị, một trường bit do http://www.bluetooth.org/en-us/specification/assigned-numbers/baseband xác định.
-
deviceId
number không bắt buộc
-
inquiryRssi
number không bắt buộc
Chrome 44 trở lênCường độ tín hiệu nhận được, tính bằng dBm. Trường này chỉ có sẵn và hợp lệ trong quá trình khám phá. Giá trị của tham số này không được chỉ định bên ngoài quy trình khám phá.
-
inquiryTxPower
number không bắt buộc
Chrome 44 trở lênMứ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. Tham số này chỉ có sẵn và hợp lệ trong quá trình khám phá.
-
tên
chuỗi không bắt buộc
Tên dễ đọc của thiết bị.
-
đã 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
number không bắt buộc
-
vận chuyển
Giao thông vận tải không bắt buộc
Chrome 76 trở lênLoại phương thức truyền dữ liệu 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. Thông tin 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 nghi ngờ, bạn nên sử dụng trực tiếp trườngdeviceClass
. -
uuids
string[] không bắt buộc
UUID của các 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 thông thường, 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ị có mức tiêu thụ năng lượng thấp, danh sách này được lấy từ các dịch vụ chính AD và GATT. Đối với các thiết bị có chế độ kép, bạn có thể lấy thông tin này từ cả hai.
-
vendorId
number 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 mà Chrome nhận dạng được.
Enum
"computer"
"phone"
"modem"
"audio"
"carAudio"
"video"
"peripheral"
"joystick"
"gamepad"
"keyboard"
"mouse"
"tablet"
"keyboardMouseCombo"
FilterType
Các loại để lọc thiết bị Bluetooth.
Enum
"tất cả"
"known"
Transport
Loại phương thức truyền dữ liệu của thiết bị Bluetooth.
Enum
"invalid"
"classic"
"le"
"dual"
VendorIdSource
Cơ quan phân bổ cho Mã nhà cung cấp.
Enum
"bluetooth"
"usb"
Phương thức
getAdapterState()
chrome.bluetooth.getAdapterState(
callback?: function,
): Promise<AdapterState>
Nhận thông tin về bộ chuyển đổi Bluetooth.
Thông số
-
callback
hàm không bắt buộc
Tham số
callback
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ê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.
getDevice()
chrome.bluetooth.getDevice(
deviceAddress: string,
callback?: function,
): Promise<Device>
Nhận thông tin về một thiết bị Bluetooth mà hệ thống biết.
Thông số
-
deviceAddress
chuỗi
Địa chỉ của thiết bị cần nhận.
-
callback
hàm không bắt buộc
Tham số
callback
có dạng như sau:(deviceInfo: Device) => void
-
deviceInfo
Đối tượng chứa thông tin về thiết bị.
-
Giá trị trả về
-
Promise<Device>
Chrome 91 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.
getDevices()
chrome.bluetooth.getDevices(
filter?: BluetoothFilter,
callback?: function,
): Promise<Device[]>
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à các thiết bị được phát hiện gần đây.
Thông số
-
filter
BluetoothFilter không bắt buộc
Chrome 67 trở lênMộ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 bộ lọc hoặc đặt thành
{}
, danh sách thiết bị được trả về sẽ chứa tất cả thiết bị Bluetooth. Hiện tại, chế độ này chỉ được hỗ trợ trong ChromeOS. Đối với các nền tảng khác, một danh sách đầy đủ sẽ được trả về. -
callback
hàm không bắt buộc
Tham số
callback
có dạng như sau:(deviceInfos: Device[]) => void
-
deviceInfos
Thiết bị[]
Mảng đối tượng chứa thông tin thiết bị.
-
Giá trị trả về
-
Promise<Device[]>
Chrome 91 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.
startDiscovery()
chrome.bluetooth.startDiscovery(
callback?: function,
): Promise<void>
Bắt đầu khám phá. Các thiết bị mới phát hiện được sẽ được trả về thông qua sự kiện onDeviceAdded. Các thiết bị đã phát hiện mà bộ điều hợp đã 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ị đó thay đổi.
Tính năng Khám phá sẽ không khởi động được nếu ứng dụng này đã gọi startDiscovery. Quá trình khám phá có thể tốn nhiều tài nguyên: bạn nên gọi stopDiscovery càng sớm càng tốt.
Thông số
-
callback
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 91 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.
stopDiscovery()
chrome.bluetooth.stopDiscovery(
callback?: function,
): Promise<void>
Dừng khám phá.
Thông số
-
callback
hàm không bắt buộc
Tham số
callback
có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 91 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.
Sự kiện
onAdapterStateChanged
chrome.bluetooth.onAdapterStateChanged.addListener(
callback: function,
)
Được kích hoạt khi trạng thái của bộ chuyển đổi Bluetooth thay đổi.
Thông số
-
callback
hàm
Tham số
callback
có dạng như sau:(state: AdapterState) => void
-
tiểu bang
-
onDeviceAdded
chrome.bluetooth.onDeviceAdded.addListener(
callback: function,
)
Được kích hoạt khi có thông tin về một thiết bị Bluetooth mới.
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.
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 đủ lâu để được coi là không dùng được nữa và khi một thiết bị đã ghép nối bị xoá.