chrome.bluetoothLowEnergy

說明

chrome.bluetoothLowEnergy API 是透過通用屬性設定檔 (GATT) 與 Bluetooth Smart (低功耗) 裝置通訊。

資訊清單

您必須在資訊清單中宣告下列金鑰,才能使用這個 API。

"bluetooth"

類型

Advertisement

Chrome 47 以上版本

屬性

  • manufacturerData

    要加進「製造商專屬資料」中的製造商專屬資料清單] 欄位

  • serviceData

    ServiceData[] 選用

    要納入「服務資料」的服務資料清單] 欄位

  • serviceUuids

    string[] 選填

    要加進「服務 UUID」的 UUID 清單] 欄位。這些 UUID 可為 16 位元、32 位元或 128 格式。

  • solicitUuids

    string[] 選填

    要加進「Solicit UUIDs」的 UUID 清單] 欄位。這些 UUID 可為 16 位元、32 位元或 128 格式。

  • 廣告的類型。

AdvertisementType

Chrome 47 以上版本

廣告的類型。如果「廣播」傳送的廣播類型將會是 ADV_NONCONN_IND,裝置則會使用隨機 MAC 位址播送。如果設為「週邊裝置」,廣告類型就會是 ADV_IND 或 ADV_SCAN_IND,而且裝置會透過真實藍牙轉接器的 MAC 位址播送。

列舉

"廣播"

"週邊裝置"

Characteristic

屬性

  • instanceId

    string optional

    傳回指派給這個特徵的 ID。請使用執行個體 ID,區分週邊裝置 (有相同 UUID) 的特徵,以及執行採用特徵 ID 的函式呼叫。如果這個執行個體代表遠端特徵,就會存在。

  • 這項特性的屬性。

  • 服務

    服務 選用

    這項特性所屬的 GATT 服務。

  • uuid

    字串

    特徵的 UUID,例如:00002a37-0000-1000-8000-00805f9b34fb.

  • ArrayBuffer 選用

    目前快取的特性值。透過通知或指標讀取或更新這個特性的值時,這個值會更新。

CharacteristicProperty

代表特徵的可能屬性的值。特性權限是從這些屬性推測得出。請參閱藍牙 4.x 規格,瞭解個別屬性的含義。

列舉

"廣播"

"讀取"

"writeWithoutResponse"

「寫」

「通知」

"indicate"

"authenticatedSignedWrites"

"extendedProperties"

"reliableWrite"

"writableAuxiliaries"

"EncryptRead"

"EncryptWrite"

"EncryptAuthenticatedRead"

"encryptAuthenticatedWrite"

ConnectProperties

屬性

  • 永久

    布林值

    此標記用於指出當應用程式的事件頁面卸載時,與裝置的連線是否保持開啟 (請參閱管理應用程式生命週期)。預設值為 false.

Descriptor

屬性

  • 特色

    特性 選用

    這個描述元所屬的 GATT 特性。

  • instanceId

    string optional

    傳回指派給這個描述元的 ID。使用執行個體 ID 來區分描述元與具有相同 UUID 的周邊裝置,以及發出會採用描述元 ID 的函式呼叫。如果這個執行個體代表遠端特徵,就會存在。

  • Chrome 52 以上版本

    這個描述元的權限。

  • uuid

    字串

    特徵描述元的 UUID,例如:00002902-0000-1000-8000-00805f9b34fb.

  • ArrayBuffer 選用

    目前快取的描述元值。系統讀取描述元的值時,這個值即會更新。

DescriptorPermission

Chrome 52 以上版本

代表描述元可能權限的值。請參閱藍牙 4.x 規格,瞭解個別權限的含義。

列舉

"讀取"

「寫」

"EncryptRead"

"EncryptWrite"

"EncryptAuthenticatedRead"

"EncryptAuthenticatedWrite"

Device

Chrome 52 以上版本

屬性

  • 地址

    字串

    裝置地址,格式為「XX:XX:XX:XX:XX:XX」。

  • deviceClass

    編號 選填

    裝置的類別,這是由 http://www.bluetooth.org/en-us/specification/assigned-numbers/baseband 定義的位元欄位。

  • 名稱

    string optional

    使用者可理解的裝置名稱。

ManufacturerData

Chrome 47 以上版本

屬性

  • 資料

    數字 []

  • id

    數字

Notification

Chrome 52 以上版本

屬性

  • shouldIndicate

    布林值 選填

    用於傳送指標 (而非通知) 的選用標記。

  • ArrayBuffer

    特徵的新值。

NotificationProperties

屬性

  • 永久

    布林值

    此標記用於指出當應用程式的事件頁面卸載時,應用程式是否應接收通知 (請參閱管理應用程式生命週期)。預設值為 false

Request

Chrome 52 以上版本

屬性

  • 裝置

    傳送這項要求的裝置。

  • requestId

    數字

    這項要求的專屬 ID。回應此要求時,請使用這組 ID。

  • ArrayBuffer 選用

    要寫入的值 (如果這是寫入要求)。

Response

Chrome 52 以上版本

屬性

  • isError

    布林值

    如果這是錯誤回應,則應為 true。

  • requestId

    數字

    此為回應的要求 ID。

  • ArrayBuffer 選用

    回應值。寫入要求和錯誤回應都會忽略這個參數。

Service

屬性

  • deviceAddress

    string optional

    GATT 服務所屬的遠端週邊裝置裝置位址。如果這個執行個體代表遠端服務,就會顯示這個數量。

  • instanceId

    string optional

    傳回指派給這項服務的 ID。請使用執行個體 ID,區分服務與具備相同 UUID 的周邊裝置,並發出會採用服務 ID 的函式呼叫。如果這個執行個體代表遠端服務,就會顯示這個數量。

  • isPrimary (主要)

    布林值

    指出這項服務類型為主要或次要。

  • uuid

    字串

    服務的 UUID,例如0000180d-0000-1000-8000-00805f9b34fb.

ServiceData

Chrome 47 以上版本

屬性

  • 資料

    數字 []

  • uuid

    字串

方法

connect()

Promise
chrome.bluetoothLowEnergy.connect(
  deviceAddress: string,
  properties?: ConnectProperties,
  callback?: function,
)

使用指定的地址,在應用程式與裝置之間建立連線。裝置可能已連線,而且沒有呼叫 connect 即可使用 GATT 服務。不過,如果應用程式需要存取裝置的 GATT 服務,就必須呼叫這個函式,確保裝置仍保持連線。如果裝置未連線,成功呼叫 connect 後,就會顯示裝置的所有 GATT 服務。

參數

  • deviceAddress

    字串

    應開啟 GATT 連線的遠端裝置藍牙位址。

  • 資源

    連線屬性 (選用)。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

createCharacteristic()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.createCharacteristic(
  characteristic: Characteristic,
  serviceId: string,
  callback?: function,
)

建立本機代管的 GATT 特性。這項特色必須託管於有效的服務之下。如果服務 ID 無效,則會設定 lastError。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • 特色

    要建立的特性。

  • serviceId

    字串

    要建立這項特性的服務 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (characteristicId: string) => void

    • characteristicId

      字串

傳回

  • 承諾<字串>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

createDescriptor()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.createDescriptor(
  descriptor: Descriptor,
  characteristicId: string,
  callback?: function,
)

建立本機代管的 GATT 描述元。這個描述元必須採用有效的特性代管。如果特性 ID 無效,系統就會設定 lastError。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • 描述元

    要建立的描述元。

  • characteristicId

    字串

    建立此描述元的特徵 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (descriptorId: string) => void

    • descriptorId

      字串

傳回

  • 承諾<字串>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

createService()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.createService(
  service: Service,
  callback?: function,
)

建立本機代管的 GATT 服務。此服務可註冊在本機 GATT 伺服器上。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • 服務

    要建立的服務。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (serviceId: string) => void

    • serviceId

      字串

傳回

  • 承諾<字串>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

disconnect()

Promise
chrome.bluetoothLowEnergy.disconnect(
  deviceAddress: string,
  callback?: function,
)

針對指定地址的裝置關閉應用程式連線。請注意,由於可能有其他應用程式已開啟連線,因此這麼做不一定會刪除實體連結。

參數

  • deviceAddress

    字串

    遠端裝置的藍牙位址。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getCharacteristic()

Promise
chrome.bluetoothLowEnergy.getCharacteristic(
  characteristicId: string,
  callback?: function,
)

取得具備指定 GATT 服務的特定執行個體 ID (如果有特性) 的 GATT 特性。

參數

  • characteristicId

    字串

    所要求 GATT 特性的執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Characteristic) => void

傳回

  • 承諾<特色>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getCharacteristics()

Promise
chrome.bluetoothLowEnergy.getCharacteristics(
  serviceId: string,
  callback?: function,
)

取得在指定服務中找到的所有 GATT 特性清單。

參數

  • serviceId

    字串

    應傳回特性的 GATT 服務執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Characteristic[]) => void

傳回

  • 承諾<特色[]>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getDescriptor()

Promise
chrome.bluetoothLowEnergy.getDescriptor(
  descriptorId: string,
  callback?: function,
)

取得具有指定執行個體 ID 的 GATT 特性描述元。

參數

  • descriptorId

    字串

    所請求 GATT 特性描述元的執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Descriptor) => void

傳回

  • Promise&lt;Descriptor&gt;

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getDescriptors()

Promise
chrome.bluetoothLowEnergy.getDescriptors(
  characteristicId: string,
  callback?: function,
)

取得屬於指定特徵的 GATT 特性描述元清單。

參數

  • characteristicId

    字串

    GATT 特性的執行個體 ID,應傳回其描述元。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Descriptor[]) => void

傳回

  • Promise&lt;Descriptor[]&gt;

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getIncludedServices()

Promise
chrome.bluetoothLowEnergy.getIncludedServices(
  serviceId: string,
  callback?: function,
)

取得指定服務包含的 GATT 服務清單。

參數

  • serviceId

    字串

    應傳回其所含服務的 GATT 服務的執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Service[]) => void

傳回

  • Promise<服務[]>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getService()

Promise
chrome.bluetoothLowEnergy.getService(
  serviceId: string,
  callback?: function,
)

取得具有指定執行個體 ID 的 GATT 服務。

參數

  • serviceId

    字串

    所要求 GATT 服務的執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Service) => void

傳回

  • Promise&lt;Service&gt;

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

getServices()

Promise
chrome.bluetoothLowEnergy.getServices(
  deviceAddress: string,
  callback?: function,
)

取得透過指定裝置位址在遠端裝置上發現的所有 GATT 服務。

注意:如果裝置上的服務探索程序尚未完成,這個 API 會傳回部分服務 (可能為空白)。解決方法是新增以時間為準的延遲時間和/或重複呼叫,直到傳回預期的服務數量為止。

參數

  • deviceAddress

    字串

    應傳回 GATT 服務的遠端裝置藍牙位址。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Service[]) => void

傳回

  • Promise<服務[]>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

notifyCharacteristicValueChanged()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.notifyCharacteristicValueChanged(
  characteristicId: string,
  notification: Notification,
  callback?: function,
)

通知遠端裝置有新的特性值。如果通知物件中的 shouldIndicate 標記為 true,則系統會傳送指標而不是通知。請注意,特性必須正確設定「通知」或「表示」屬性建立成功。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • characteristicId

    字串

    傳送標記的特性。

  • 通知
  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

readCharacteristicValue()

Promise
chrome.bluetoothLowEnergy.readCharacteristicValue(
  characteristicId: string,
  callback?: function,
)

從遠端週邊裝置擷取指定特徵的值。

參數

  • characteristicId

    字串

    應從遠端裝置讀取此 GATT 特徵的值。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Characteristic) => void

傳回

  • 承諾<特色>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

readDescriptorValue()

Promise
chrome.bluetoothLowEnergy.readDescriptorValue(
  descriptorId: string,
  callback?: function,
)

從遠端週邊裝置擷取指定特徵描述元的值。

參數

  • descriptorId

    字串

    GATT 特性描述元的執行個體 ID,其值應從遠端裝置讀取。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (result: Descriptor) => void

傳回

  • Promise&lt;Descriptor&gt;

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

registerAdvertisement()

Promise Chrome 47 以上版本
chrome.bluetoothLowEnergy.registerAdvertisement(
  advertisement: Advertisement,
  callback?: function,
)

建立廣告並註冊,以放送廣告。如要呼叫這個函式,應用程式必須將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true。此外,這個 API 僅適用於處於 Kiosk 模式的自動啟動應用程式,或透過設定「--enable-ble-advertising-in-apps」指令列切換鈕請參閱 https://developer.chrome.com/apps/manifest/bluetooth 注意: 部分硬體可同時支援中央和周邊模式,但在硬體不支援這項功能的情況下,如果硬體不支援這項功能,這項呼叫會將裝置切換為週邊模式。如果硬體不支援中央和周邊模式,嘗試在這兩種模式下使用裝置時,會導致未定義的行為,或是導致其他中央角色的應用程式無法正常運作 (包括發現藍牙低功耗裝置)。

參數

  • 廣告

    要宣傳的廣告。

  • 回呼

    函式 選用

    callback 參數如下所示:

    (advertisementId: number) => void

    • advertisementId

      數字

傳回

  • Promise&lt;number&gt;

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

registerService()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.registerService(
  serviceId: string,
  callback?: function,
)

透過本機 GATT 伺服器註冊特定服務。如果服務 ID 無效,則會設定 lastError。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • serviceId

    字串

    所建立服務的專屬 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

removeService()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.removeService(
  serviceId: string,
  callback?: function,
)

移除指定的服務,如果已註冊服務,請將其取消註冊。如果服務 ID 無效,則會設定 lastError。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • serviceId

    字串

    目前註冊服務的專屬 ID,

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

resetAdvertising()

Promise Chrome 61 以上版本
chrome.bluetoothLowEnergy.resetAdvertising(
  callback?: function,
)

重設目前裝置上的廣告。這樣做會取消註冊並停止所有現有的廣告。

參數

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

sendRequestResponse()

Chrome 52 以上版本
chrome.bluetoothLowEnergy.sendRequestResponse(
  response: Response,
)

傳送特徵或描述元讀取/寫入要求的回應。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • 回應

    要求的回應。

setAdvertisingInterval()

Promise Chrome 55 以上版本
chrome.bluetoothLowEnergy.setAdvertisingInterval(
  minInterval: number,
  maxInterval: number,
  callback?: function,
)

設定連續兩個廣告之間的間隔。注意:系統會盡快完成這項操作。實際間隔可能與要求的間隔時間有點不同。在某些硬體上,間隔至少為 100 毫秒。最小值和最大值不得超過藍牙 4.2 規格允許的範圍。

參數

  • minInterval

    數字

    廣告之間的最短間隔 (以毫秒為單位)。根據規格,這個值不得低於 20 毫秒。

  • maxInterval

    數字

    廣告之間的時間間隔上限 (以毫秒為單位)。根據規格,這個值不得大於 10240 毫秒。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

startCharacteristicNotifications()

Promise
chrome.bluetoothLowEnergy.startCharacteristicNotifications(
  characteristicId: string,
  properties?: NotificationProperties,
  callback?: function,
)

啟用指定特性的值通知/指示。啟用後,應用程式就可以使用 onCharacteristicValueChanged 事件來監聽通知。

參數

  • characteristicId

    字串

    應啟用通知的 GATT 特性執行個體 ID。

  • 資源

    通知工作階段屬性 (選用)。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

stopCharacteristicNotifications()

Promise
chrome.bluetoothLowEnergy.stopCharacteristicNotifications(
  characteristicId: string,
  callback?: function,
)

停用指定特性的值通知/指示。成功呼叫後,應用程式將停止接收這個特性的通知/指示。

參數

  • characteristicId

    字串

    應用程式通知工作階段應停止的 GATT 特徵執行個體 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

unregisterAdvertisement()

Promise Chrome 47 以上版本
chrome.bluetoothLowEnergy.unregisterAdvertisement(
  advertisementId: number,
  callback?: function,
)

取消註冊廣告並停止放送廣告。如果廣告無法取消註冊,便只能重新啟動裝置。

參數

  • advertisementId

    數字

    要取消註冊的廣告 ID。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

unregisterService()

Promise Chrome 52 以上版本
chrome.bluetoothLowEnergy.unregisterService(
  serviceId: string,
  callback?: function,
)

使用本機 GATT 伺服器取消註冊特定服務。如果服務 ID 無效,則會設定 lastError。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,才能使用這項功能。某些應用程式可能無法使用周邊裝置權限。

參數

  • serviceId

    字串

    目前註冊服務的專屬 ID,

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

writeCharacteristicValue()

Promise
chrome.bluetoothLowEnergy.writeCharacteristicValue(
  characteristicId: string,
  value: ArrayBuffer,
  callback?: function,
)

透過遠端週邊裝置寫入指定特徵的值。

參數

  • characteristicId

    字串

    應寫入其值的 GATT 特徵例項 ID。

  • ArrayBuffer

    應該在寫入要求中傳送至遠端特性的值。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

writeDescriptorValue()

Promise
chrome.bluetoothLowEnergy.writeDescriptorValue(
  descriptorId: string,
  value: ArrayBuffer,
  callback?: function,
)

從遠端週邊裝置寫入指定特徵描述元的值。

參數

  • descriptorId

    字串

    應寫入其值的 GATT 特性描述元的執行個體 ID。

  • ArrayBuffer

    應傳送至遠端描述元的值,當做寫入要求的一部分。

  • 回呼

    函式 選用

    callback 參數如下所示:

    () => void

傳回

  • 承諾<void>

    Chrome 91 以上版本

    Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。

活動

onCharacteristicReadRequest

Chrome 52 以上版本
chrome.bluetoothLowEnergy.onCharacteristicReadRequest.addListener(
  callback: function,
)

當已連線的中央裝置要求讀取在本機 GATT 伺服器上登錄的特性值時觸發。長時間未回應這項要求可能會導致連線中斷。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,系統才會參與這個事件。某些應用程式可能無法使用周邊裝置權限。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (request: Request, characteristicId: string) => void

    • 申請。
    • characteristicId

      字串

onCharacteristicValueChanged

chrome.bluetoothLowEnergy.onCharacteristicValueChanged.addListener(
  callback: function,
)

當遠端 GATT 特性的值變更時 (可能是因讀取要求而變更,或是值變更通知/表示值變更時觸發)。只有在應用程式透過呼叫 startCharacteristicNotifications 啟用通知功能時,系統才會傳送這個事件。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (characteristic: Characteristic) => void

onCharacteristicWriteRequest

Chrome 52 以上版本
chrome.bluetoothLowEnergy.onCharacteristicWriteRequest.addListener(
  callback: function,
)

連線的中央裝置要求寫入在本機 GATT 伺服器上登錄的特性值時觸發。長時間未回應這項要求可能會導致連線中斷。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,系統才會參與這個事件。某些應用程式可能無法使用周邊裝置權限。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (request: Request, characteristicId: string) => void

    • 申請。
    • characteristicId

      字串

onDescriptorReadRequest

Chrome 52 以上版本
chrome.bluetoothLowEnergy.onDescriptorReadRequest.addListener(
  callback: function,
)

當連線的中央裝置要求讀取在本機 GATT 伺服器上註冊的描述元值時觸發。長時間未回應這項要求可能會導致連線中斷。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,系統才會參與這個事件。某些應用程式可能無法使用周邊裝置權限。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (request: Request, descriptorId: string) => void

    • 申請。
    • descriptorId

      字串

onDescriptorValueChanged

chrome.bluetoothLowEnergy.onDescriptorValueChanged.addListener(
  callback: function,
)

當遠端 GATT 特性描述元的值變更時觸發,通常是因為讀取要求而觸發。此事件大多為方便起見,一律會在成功呼叫 readDescriptorValue 後傳送。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (descriptor: Descriptor) => void

onDescriptorWriteRequest

Chrome 52 以上版本
chrome.bluetoothLowEnergy.onDescriptorWriteRequest.addListener(
  callback: function,
)

當連線的中央裝置要求寫入在本機 GATT 伺服器上註冊的描述元值時觸發。長時間未回應這項要求可能會導致連線中斷。只有在應用程式同時將「bluetooth:low_energy」和「bluetooth:peripheral」權限設為 true 時,系統才會參與這個事件。某些應用程式可能無法使用周邊裝置權限。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (request: Request, descriptorId: string) => void

    • 申請。
    • descriptorId

      字串

onServiceAdded

chrome.bluetoothLowEnergy.onServiceAdded.addListener(
  callback: function,
)

有人透過遠端裝置發現了新的 GATT 服務。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (service: Service) => void

onServiceChanged

chrome.bluetoothLowEnergy.onServiceChanged.addListener(
  callback: function,
)

遠端 GATT 服務狀態變更時觸發。這包括從服務中新增或移除的特性和/或描述元,以及「ServiceChanged」接收來自遠端裝置的通知。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (service: Service) => void

onServiceRemoved

chrome.bluetoothLowEnergy.onServiceRemoved.addListener(
  callback: function,
)

從遠端裝置發現的 GATT 服務遭到移除時觸發。

參數

  • 回呼

    函式

    callback 參數如下所示:

    (service: Service) => void