chrome.bluetoothLowEnergy

説明

chrome.bluetoothLowEnergy API は、汎用属性プロファイル(GATT)を使用して Bluetooth Smart(低エネルギー)デバイスと通信するために使用されます。

マニフェスト

この API を使用するには、次のキーをマニフェストで宣言する必要があります。

"bluetooth"

Advertisement

Chrome 47 以降

プロパティ

  • manufacturerData

    ManufacturerData[] 省略可

    広告データの [メーカー固有のデータ] フィールドに含めるメーカー固有のデータのリスト。

  • serviceData

    ServiceData[] 省略可

    広告データの [サービスデータ] フィールドに含めるサービスデータのリスト。

  • serviceUuids

    string[] 省略可

    広告データの [サービス UUID] フィールドに含める UUID のリスト。これらの UUID は、16 ビット、32 ビット、128 ビットの形式にすることができます。

  • solicitUuids

    string[] 省略可

    広告データの [Solicit UUIDs] フィールドに含める UUID のリスト。これらの UUID は、16 ビット、32 ビット、128 ビットの形式にすることができます。

  • 広告の種類。

AdvertisementType

Chrome 47 以降

広告の種類。[broadcast] を選択した場合、送信されるアドバタイズ タイプは ADV_NONCONN_IND になり、デバイスはランダムな MAC アドレスでブロードキャストします。「peripheral」に設定すると、アドバタイズ タイプは ADV_IND または ADV_SCAN_IND になり、デバイスは実際の Bluetooth アダプタの MAC アドレスでブロードキャストします。

列挙型

「ブロードキャスト」

"peripheral"

Characteristic

プロパティ

  • instanceId

    文字列(省略可)

    この特性に割り当てられた ID を返します。インスタンス ID は、同じ UUID を持つペリフェラルの特性を区別し、特性 ID を受け取る関数呼び出しを行うために使用します。このインスタンスがリモート特性を表す場合、存在します。

  • プロパティ

    この特性のプロパティ。

  • サービス

    サービス 省略可

    この特性が属する GATT サービス。

  • uuid

    文字列

    特性の UUID(例: 00002a37-0000-1000-8000-00805f9b34fb)。

  • ArrayBuffer(省略可)

    現在キャッシュに保存されている特徴値。この値は、通知またはインジケーションを介して特性の値が読み取られたり更新されたりするときに更新されます。

CharacteristicProperty

特性の可能なプロパティを表す値。特徴の権限は、これらのプロパティから推測されます。各プロパティの意味については、Bluetooth 4.x の仕様をご覧ください。

列挙型

「ブロードキャスト」

「read」

"writeWithoutResponse"

「write」

「notify」

「示す」アイコン

"authenticatedSignedWrites"

"extendedProperties"

"reliableWrite"

"writableAuxiliaries"

encryptRead

encryptWrite

"encryptAuthenticatedRead"

"encryptAuthenticatedWrite"

ConnectProperties

プロパティ

  • 永続

    ブール値

    アプリケーションのイベントページがアンロードされたときに、デバイスへの接続が開いたままになるかどうかを示すフラグ(アプリのライフサイクルを管理するをご覧ください)。デフォルト値は false. です。

Descriptor

プロパティ

  • 特性

    特性 省略可

    この記述子が属する GATT 特性。

  • instanceId

    文字列(省略可)

    この記述子に割り当てられた ID を返します。インスタンス ID を使用して、同じ UUID を持つペリフェラルの記述子を区別し、記述子 ID を受け取る関数呼び出しを行います。このインスタンスがリモート特性を表す場合、存在します。

  • Chrome 52 以降

    この記述子の権限。

  • uuid

    文字列

    特性記述子の UUID(00002902-0000-1000-8000-00805f9b34fb など)。

  • ArrayBuffer(省略可)

    現在キャッシュに保存されている記述子値。この値は、記述子の値が読み取られると更新されます。

DescriptorPermission

Chrome 52 以降

記述子に適用できる権限を表す値。各権限の意味については、Bluetooth 4.x の仕様をご覧ください。

列挙型

「read」

「write」

「encryptedRead」

"encryptedWrite"

"encryptedAuthenticatedRead"

"encryptedAuthenticatedWrite"

Device

Chrome 52 以降

プロパティ

  • 住所

    文字列

    デバイスのアドレス(XX:XX:XX:XX:XX:XX の形式)。

  • deviceClass

    number(省略可)

    デバイスのクラス。http://www.bluetooth.org/en-us/specification/assigned-numbers/baseband で定義されたビットフィールド。

  • name

    文字列(省略可)

    デバイスの人間が読める名前。

ManufacturerData

Chrome 47 以降

プロパティ

  • データ

    number[]

  • 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

    文字列(省略可)

    GATT サービスが属するリモート ペリフェラルのデバイス アドレス。このインスタンスがリモート サービスを表す場合、存在します。

  • instanceId

    文字列(省略可)

    このサービスに割り当てられた ID を返します。インスタンス ID は、同じ UUID を持つペリフェラルのサービスと区別したり、サービス ID を受け取る関数呼び出しを行うために使用します。このインスタンスがリモート サービスを表す場合、存在します。

  • isPrimary

    ブール値

    このサービスのタイプがプライマリかセカンダリかを指定します。

  • uuid

    文字列

    サービスの UUID(例: 0000180d-0000-1000-8000-00805f9b34fb)。

ServiceData

Chrome 47 以降

プロパティ

  • データ

    number[]

  • uuid

    文字列

メソッド

connect()

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

指定されたアドレスを持つアプリケーションとデバイス間の接続を確立します。デバイスがすでに接続されていて、connect を呼び出すことなく GATT サービスを利用できる場合があります。ただし、デバイスの GATT サービスにアクセスするアプリは、この関数を呼び出してデバイスへの接続が維持されるようにする必要があります。デバイスが接続されていない場合、connect の呼び出しが正常に完了すると、デバイスのすべての GATT サービスが検出されます。

パラメータ

  • deviceAddress

    文字列

    GATT 接続を開くリモート デバイスの Bluetooth アドレス。

  • プロパティ

    接続プロパティ(省略可)。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<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

    function 省略可

    callback パラメータは次のようになります。

    (characteristicId: string) => void

    • characteristicId

      文字列

戻り値

  • Promise<string>

    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

    function 省略可

    callback パラメータは次のようになります。

    (descriptorId: string) => void

    • descriptorId

      文字列

戻り値

  • Promise<string>

    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

    function 省略可

    callback パラメータは次のようになります。

    (serviceId: string) => void

    • serviceId

      文字列

戻り値

  • Promise<string>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

disconnect()

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

指定されたアドレスのデバイスとのアプリの接続を閉じます。ただし、接続が開いている他のアプリがある場合、物理的なリンク自体が破棄されるとは限りません。

パラメータ

  • deviceAddress

    文字列

    リモート デバイスの Bluetooth アドレス。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getCharacteristic()

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

指定された GATT サービスに属する指定されたインスタンス ID の GATT 特性を取得します(特性が存在する場合)。

パラメータ

  • characteristicId

    文字列

    リクエストされた GATT 特性のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Characteristic) => void

戻り値

  • Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getCharacteristics()

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

特定のサービスに属する検出されたすべての GATT 特性のリストを取得します。

パラメータ

  • serviceId

    文字列

    特性を返す GATT サービスのインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Characteristic[]) => void

戻り値

  • Promise<Characteristic[]>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getDescriptor()

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

指定されたインスタンス ID の GATT 特性記述子を取得します。

パラメータ

  • descriptorId

    文字列

    リクエストされた GATT 特性記述子のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Descriptor) => void

戻り値

  • Promise<Descriptor>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getDescriptors()

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

指定された特性に属する GATT 特性記述子のリストを取得します。

パラメータ

  • characteristicId

    文字列

    記述子を返す GATT 特性のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Descriptor[]) => void

戻り値

  • Promise<Descriptor[]>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getIncludedServices()

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

指定されたサービスに含まれる GATT サービスのリストを取得します。

パラメータ

  • serviceId

    文字列

    含まれるサービスを返す GATT サービスのインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Service[]) => void

戻り値

  • Promise<Service[]>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getService()

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

指定されたインスタンス ID の GATT サービスを取得します。

パラメータ

  • serviceId

    文字列

    リクエストされた GATT サービスのインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Service) => void

戻り値

  • Promise<Service>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

getServices()

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

指定されたデバイス アドレスのリモート デバイスで検出されたすべての GATT サービスを取得します。

注: デバイスでサービス検出がまだ完了していない場合、この API はサービスのサブセット(空の場合もあります)を返します。回避策として、時間ベースの遅延を追加するか、想定されるサービス数が表示されるまで繰り返し呼び出すことができます。

パラメータ

  • deviceAddress

    文字列

    GATT サービスを返すリモート デバイスの Bluetooth アドレス。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Service[]) => void

戻り値

  • Promise<Service[]>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

notifyCharacteristicValueChanged()

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

リモート デバイスに特性の新しい値を通知します。通知オブジェクトの shouldIndicate フラグが true の場合、通知ではなくインジケーションが送信されます。この呼び出しが成功するには、作成時に特性の「notify」プロパティまたは「indicate」プロパティを正しく設定する必要があります。この関数は、アプリで bluetooth:low_energy 権限と bluetooth:peripheral 権限の両方が true に設定されている場合にのみ使用できます。すべてのアプリで周辺機器の権限を使用できるわけではありません。

パラメータ

  • characteristicId

    文字列

    通知を送信する特性。

  • 通知
  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

readCharacteristicValue()

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

リモート ペリフェラルから指定された特性の値を取得します。

パラメータ

  • characteristicId

    文字列

    リモート デバイスから値を読み取る GATT 特性のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Characteristic) => void

戻り値

  • Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

readDescriptorValue()

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

リモート ペリフェラルから指定された特性記述子の値を取得します。

パラメータ

  • descriptorId

    文字列

    リモート デバイスから値を読み取る GATT 特性記述子のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (result: Descriptor) => void

戻り値

  • Promise<Descriptor>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

registerAdvertisement()

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

広告を作成し、広告掲載に登録します。この関数を呼び出すには、アプリに bluetooth:low_energy 権限と bluetooth:peripheral 権限が true に設定されている必要があります。また、この API は、キオスクモードで自動起動するアプリ、または「--enable-ble-advertising-in-apps」コマンドライン スイッチを設定した場合にのみ使用できます。https://developer.chrome.com/apps/manifest/bluetooth をご覧ください。注: 一部のハードウェアでは、セントラル モードとペリフェラル モードを同時にサポートしていますが、これをサポートしていないハードウェアでは、この呼び出しを行うとデバイスがペリフェラル モードに切り替わります。セントラル モードとペリフェラル モードの両方をサポートしていないハードウェアの場合、両方のモードでデバイスを使用しようとすると、未定義の動作が発生するか、他のセントラル ロール アプリケーションが正しく動作しなくなる(Bluetooth Low Energy デバイスの検出を含む)可能性があります。

パラメータ

  • 広告

    宣伝する広告。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (advertisementId: number) => void

    • advertisementId

      数値

戻り値

  • Promise<number>

    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

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<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

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

resetAdvertising()

Promise Chrome 61 以降
chrome.bluetoothLowEnergy.resetAdvertising(
  callback?: function,
)

現在のデバイスの広告をリセットします。既存の広告はすべて登録解除され、停止されます。

パラメータ

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<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,
)

連続する 2 つの広告の間隔を設定します。注: これはベスト エフォートです。実際の間隔は、リクエストされた間隔とは大きく異なる場合があります。ハードウェアによっては、最小間隔が 100 ミリ秒に設定されている場合があります。最小値と最大値は、Bluetooth 4.2 仕様で許容される範囲を超えることはできません。

パラメータ

  • minInterval

    数値

    広告間の最小間隔(ミリ秒単位)。この値は(仕様により)20 ミリ秒未満にすることはできません。

  • maxInterval

    数値

    広告間の最大間隔(ミリ秒)。上限は 10,240 ミリ秒です(仕様による)。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

startCharacteristicNotifications()

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

指定した特性からの値の通知/指示を有効にします。有効にすると、アプリケーションは onCharacteristicValueChanged イベントを使用して通知をリッスンできます。

パラメータ

  • characteristicId

    文字列

    通知を有効にする GATT 特性のインスタンス ID。

  • プロパティ

    通知セッションのプロパティ(省略可)。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

stopCharacteristicNotifications()

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

指定された特性からの値の通知/指示を無効にします。呼び出しが成功すると、この特性からの通知/指示の受信が停止します。

パラメータ

  • characteristicId

    文字列

    このアプリの通知セッションを停止する GATT 特性のインスタンス ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

unregisterAdvertisement()

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

広告を登録解除し、広告掲載を停止します。広告の登録解除に失敗した場合、広告を停止する唯一の方法はデバイスの再起動です。

パラメータ

  • advertisementId

    数値

    登録解除する広告の ID。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<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

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

writeCharacteristicValue()

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

リモート ペリフェラルから指定された特性の値を書き込みます。

パラメータ

  • characteristicId

    文字列

    値を書き込む必要がある GATT 特性のインスタンス ID。

  • ArrayBuffer

    書き込みリクエストの一部としてリモート特性に送信する値。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

writeDescriptorValue()

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

リモート ペリフェラルから指定された特性記述子の値を書き込みます。

パラメータ

  • descriptorId

    文字列

    値を書き込む必要がある GATT 特性記述子のインスタンス ID。

  • ArrayBuffer

    書き込みリクエストの一部としてリモート記述子に送信する値。

  • callback

    function 省略可

    callback パラメータは次のようになります。

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

イベント

onCharacteristicReadRequest

Chrome 52 以降
chrome.bluetoothLowEnergy.onCharacteristicReadRequest.addListener(
  callback: function,
)

接続された中央デバイスが、ローカル GATT サーバーに登録されている特性の値の読み取りをリクエストしたときにトリガーされます。このリクエストに長時間応答しなかった場合、接続が切断される可能性があります。このイベントは、アプリで bluetooth:low_energy 権限と bluetooth:peripheral 権限の両方が true に設定されている場合にのみ使用できます。すべてのアプリで周辺機器の権限を使用できるわけではありません。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

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

onCharacteristicValueChanged

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

リモート GATT 特性の値が、読み取りリクエストの結果、または値の変更通知/指示の結果として変更されたときに発生します。このイベントは、アプリが startCharacteristicNotifications を呼び出して通知を有効にしている場合にのみ送信されます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (characteristic: Characteristic) => void

onCharacteristicWriteRequest

Chrome 52 以降
chrome.bluetoothLowEnergy.onCharacteristicWriteRequest.addListener(
  callback: function,
)

接続された中央デバイスが、ローカル GATT サーバーに登録されている特性の値の書き込みをリクエストしたときにトリガーされます。このリクエストに長時間応答しなかった場合、接続が切断される可能性があります。このイベントは、アプリで bluetooth:low_energy 権限と bluetooth:peripheral 権限の両方が true に設定されている場合にのみ使用できます。すべてのアプリで周辺機器の権限を使用できるわけではありません。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

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

onDescriptorReadRequest

Chrome 52 以降
chrome.bluetoothLowEnergy.onDescriptorReadRequest.addListener(
  callback: function,
)

接続された中央デバイスが、ローカル GATT サーバーに登録されている記述子の値の読み取りをリクエストしたときにトリガーされます。このリクエストに長時間応答しなかった場合、接続が切断される可能性があります。このイベントは、アプリで bluetooth:low_energy 権限と bluetooth:peripheral 権限の両方が true に設定されている場合にのみ使用できます。すべてのアプリで周辺機器の権限を使用できるわけではありません。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

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

onDescriptorValueChanged

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

通常は読み取りリクエストの結果として、リモート GATT 特性記述子の値が変更されたときにトリガーされます。このイベントは主に利便性のために存在し、readDescriptorValue の呼び出しが成功した後に常に送信されます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (descriptor: Descriptor) => void

onDescriptorWriteRequest

Chrome 52 以降
chrome.bluetoothLowEnergy.onDescriptorWriteRequest.addListener(
  callback: function,
)

接続された中央デバイスが、ローカル GATT サーバーに登録されている記述子の値の書き込みをリクエストしたときにトリガーされます。このリクエストに長時間応答しなかった場合、接続が切断される可能性があります。このイベントは、アプリで bluetooth:low_energy 権限と bluetooth:peripheral 権限の両方が true に設定されている場合にのみ使用できます。すべてのアプリで周辺機器の権限を使用できるわけではありません。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

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

onServiceAdded

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

リモート デバイスで新しい GATT サービスが検出されたときにトリガーされます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (service: Service) => void

onServiceChanged

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

リモート GATT サービスの状態が変化したときに呼び出されます。これには、サービスに追加または削除される特性や記述子、リモート デバイスからの「ServiceChanged」通知が含まれます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (service: Service) => void

onServiceRemoved

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

リモート デバイスで以前に検出された GATT サービスが削除されたときにトリガーされます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (service: Service) => void