chrome.bluetooth

説明

chrome.bluetooth API を使用して Bluetooth デバイスに接続します。すべての関数は、chrome.runtime.lastError を介してエラーを報告します。

対象

ChromeOS のみ

マニフェスト

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

"bluetooth"

型

AdapterState

プロパティ

  • 住所

    文字列

    アダプターのアドレス(「XX:XX:XX:XX:XX:XX」の形式)。

  • 使用可能

    ブール値

    アダプターが利用可能(有効)かどうかを示します。

  • 見つける

    ブール値

    アダプターが現在検出中かどうかを示します。

  • name

    文字列

    アダプターの人が読める形式の名前。

  • 活用

    ブール値

    アダプターに電力が供給されているかどうかを示します。

BluetoothFilter

Chrome 67 以降

プロパティ

  • filterType

    FilterType 省略可

    デバイスリストに適用するフィルタの種類。デフォルトはすべてです。

  • limit

    number 省略可

    返される Bluetooth デバイスの最大数。指定しない場合、デフォルトは 0(無制限)です。

Device

プロパティ

  • 住所

    文字列

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

  • batteryPercentage

    number 省略可

    Chrome 77 以降

    デバイスのバッテリー残量。

  • 接続性の向上

    boolean 省略可

    Chrome 48 以降

    デバイスが接続可能かどうかを示します。

  • 接続済み

    boolean 省略可

    デバイスが現在システムに接続されているかどうかを示します。

  • connecting

    boolean 省略可

    Chrome 48 以降

    デバイスが現在システムに接続しているかどうかを示します。

  • deviceClass

    number 省略可

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

  • deviceId

    number 省略可

  • inquiryRssi

    number 省略可

    Chrome 44 以降

    受信信号強度(dBm)。このフィールドは、検出中にのみ使用可能で有効です。検出以外では、値は指定されません。

  • inquiryTxPower

    number 省略可

    Chrome 44 以降

    送信電力レベル。このフィールドは、AD にこのフィールドが含まれている LE デバイスでのみ使用できます。これは、検出中にのみ使用可能で有効です。

  • name

    文字列 省略可

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

  • ペア設定済み

    boolean 省略可

    デバイスがシステムとペア設定されているかどうかを示します。

  • productId

    number 省略可

  • transport

    Transport 省略可

    Chrome 76 以降

    Bluetooth デバイスの通信方式。

  • type

    DeviceType 省略可

    デバイスの種類(Chrome で認識されている場合)。これは deviceClass フィールドから取得され、使用可能なデバイスタイプのごく一部のみを表します。不明な点がある場合は、deviceClass フィールドを直接使用してください。

  • uuids

    string[] 省略可

    デバイスによってアドバタイズされるプロトコル、プロファイル、サービスの UUID。クラシック Bluetooth デバイスの場合、このリストは EIR データと SDP テーブルから取得されます。Low Energy デバイスの場合、このリストは AD および GATT プライマリ サービスから取得されます。デュアルモード デバイスの場合、両方から取得できます。

  • vendorId

    number 省略可

  • vendorIdSource

    VendorIdSource 省略可

    デバイスのデバイス ID レコード(利用可能な場合)。

DeviceType

Chrome で認識される一般的なデバイスタイプ。

列挙型

「パソコン」

"phone"

"modem"

"audio"

"carAudio"

"video"

"peripheral"

"joystick"

"gamepad"

"keyboard"

"mouse"

"tablet"

"keyboardMouseCombo"

FilterType

Chrome 67 以降

Bluetooth デバイスをフィルタするためのタイプ。

列挙型

"all"

「既知」

Transport

Chrome 76 以降

Bluetooth デバイスの通信方式。

列挙型

"invalid"

"classic"

"le"

"dual"

VendorIdSource

ベンダー ID の割り当て機関。

列挙型

"bluetooth"

"usb"

メソッド

getAdapterState()

Promise
chrome.bluetooth.getAdapterState(
  callback?: function,
)
: Promise<AdapterState>

Bluetooth アダプターに関する情報を取得します。

パラメータ

  • callback

    function 省略可

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

    (adapterInfo: AdapterState) => void

    • adapterInfo

      アダプタ情報を含むオブジェクト。

戻り値

  • Promise<AdapterState>

    Chrome 91 以降

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

getDevice()

Promise
chrome.bluetooth.getDevice(
  deviceAddress: string,
  callback?: function,
)
: Promise<Device>

システムに認識されている Bluetooth デバイスに関する情報を取得します。

パラメータ

  • deviceAddress

    文字列

    取得するデバイスのアドレス。

  • callback

    function 省略可

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

    (deviceInfo: Device) => void

    • deviceInfo

      デバイス情報を含むオブジェクト。

戻り値

  • Promise<Device>

    Chrome 91 以降

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

getDevices()

Promise
chrome.bluetooth.getDevices(
  filter?: BluetoothFilter,
  callback?: function,
)
: Promise<Device[]>

ペア設定されたデバイスや最近検出されたデバイスなど、システムに認識されている Bluetooth デバイスのリストを取得します。

パラメータ

  • filter

    BluetoothFilter 省略可

    Chrome 67 以降

    返された Bluetooth デバイスのリストをフィルタする条件。フィルタが設定されていないか、{} に設定されている場合、返されるデバイスリストにはすべての Bluetooth デバイスが含まれます。現在、これは ChromeOS でのみサポートされています。他のプラットフォームでは、完全なリストが返されます。

  • callback

    function 省略可

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

    (deviceInfos: Device[]) => void

    • deviceInfos

      デバイス情報を含むオブジェクトの配列。

戻り値

  • Promise<Device[]>

    Chrome 91 以降

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

startDiscovery()

Promise
chrome.bluetooth.startDiscovery(
  callback?: function,
)
: Promise<void>

検出を開始します。新しく検出されたデバイスは、onDeviceAdded イベントを介して返されます。アダプターがすでに認識している、以前に検出されたデバイスは、getDevices を使用して取得する必要があります。また、それらのデバイスに関する情報が変更された場合にのみ、onDeviceChanged イベントを使用して更新されます。

このアプリケーションがすでに startDiscovery を呼び出している場合、検出は開始されません。検出はリソースを大量に消費する可能性があるため、できるだけ早く stopDiscovery を呼び出す必要があります。

パラメータ

  • callback

    function 省略可

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

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

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

stopDiscovery()

Promise
chrome.bluetooth.stopDiscovery(
  callback?: function,
)
: Promise<void>

検出を停止します。

パラメータ

  • callback

    function 省略可

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

    () => void

戻り値

  • Promise<void>

    Chrome 91 以降

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

イベント

onAdapterStateChanged

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

Bluetooth アダプターの状態が変化したときに呼び出されます。

パラメータ

  • callback

    関数

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

    (state: AdapterState) => void

onDeviceAdded

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

新しい Bluetooth デバイスに関する情報が利用可能になったときに呼び出されます。

パラメータ

  • callback

    関数

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

    (device: Device) => void

onDeviceChanged

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

既知の Bluetooth デバイスに関する情報が変更されたときに呼び出されます。

パラメータ

  • callback

    関数

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

    (device: Device) => void

onDeviceRemoved

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

以前に検出された Bluetooth デバイスが、再び利用不可と見なされるほど長い間範囲外になった場合、およびペア設定済みのデバイスが削除された場合に呼び出されます。

パラメータ

  • callback

    関数

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

    (device: Device) => void