次の方法で共有


Bluetoothのデバイス機能を指定する方法

Windows 10 のノート については、「Windows 10 の の相違点」を参照してください。

 

パッケージ マニフェストは、システムが Windows ランタイム アプリアプリを展開、表示、または更新するために必要な情報を含む XML ドキュメントです。 この情報には、パッケージ ID、パッケージの依存関係、必要な機能、ビジュアル要素、および拡張ポイントが含まれます。 すべてのアプリ パッケージには、1 つのパッケージ マニフェストを含める必要があります。

パッケージ マニフェストの詳細については、「パッケージ マニフェストを手動で作成する方法」を参照してください。

(Rfcomm または Gatt API を介して) Bluetooth デバイスにアクセスする Windows ランタイム アプリは、マニフェストの Capabilities ノードに特定の DeviceCapability データを含める必要があります。 このデータは、デバイスとその目的 (または機能) を識別します。 一部のデバイスには複数の機能がある場合があることに注意してください。

デバイス ID 要素は、デバイス識別子に対応します。 この要素は、ベンダー ID (vid) と 製品 ID (pid) 組み合わせを指定できます。または、製造元モデルの組み合わせを指定することができます。または、ジェネリック文字列 ("any") を指定できます。 さらに、デバイス IDベンダー ID (vid) と Product Id (pid) が指定されている場合は、オプションのプロバイダー文字列 "usb" または "bluetooth" を含めることができます。

関数型 要素は、デバイス関数を指定します。 この要素は、Bluetooth サービス名 (名前) またはサービス ID (serviceId) 指定できます。

Bluetooth DeviceCapability Usage

Bluetooth アプリは、デバイスに関する重要な情報を指定するために、アプリ パッケージ マニフェスト に特定のデバイス機能を含める必要があります。 階層的な順序で必要な要素を次に示します。

<DeviceCapability>: Name 属性は、Bluetooth RFCOMM デバイスにアクセスするには "bluetooth.rfcomm" であるか、Bluetooth GATT デバイスにアクセスするための "bluetooth.genericAttributeProfile" である必要があります。

<デバイス>: ID 属性は、ベンダー/製品 ID、または製造元/モデルを指定する必要があります。関数の種類に一致する任意のデバイスへのアクセスを許可するには、"any" にすることができます。

<関数の>: 属性では、サービス名またはサービス ID を指定できます。

Microsoft Visual Studio のBluetooth デバイス機能を変更することはできません。 ソリューション エクスプローラーの で Package.appxmanifest ファイル 右クリックし、[ で開く...] を選択し、[ XML (テキスト) エディター]を する必要があります。 ファイルはプレーン XML で開きます。

 

Rfcomm DeviceCapabilities の定義

次のレイアウトを使用して、アプリの Bluetooth RFCOMM 機能について説明します。

<m2:DeviceCapability Name="bluetooth.rfcomm">
  <m2:Device Id="vidpid:xxxx xxxx bluetooth">
    <m2:Function Type="serviceId:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"/>
    <m2:Function Type="name:xxxxx"/>
  </m2:Device>
<m2:/DeviceCapability>

GenericAttributeProfile DeviceCapabilities の定義

次のレイアウトを使用して、アプリのBluetooth GATT 機能について説明します。

<m2:DeviceCapability Name="bluetooth.genericAttributeProfile">
  <m2:Device Id="model:xxxx;xxxx">
    <m2:Function Type="serviceId:xxxxxxxx"/>
    <m2:Function Type="name:xxxxx"/>
  <m2:/Device>
<m2:/DeviceCapability>

DeviceCapabilities の例を指定する方法

次のエントリは、Bluetooth デバイス DeviceCapabilities を定義するためのさまざまな方法を示しています。

次のスニペットでは、ベンダー ID製品 ID の組み合わせを使用して、オプションのプロバイダーと共に、Bluetooth RFCOMM デバイスの DeviceCapabilities を識別します。

<m2:DeviceCapability Name="bluetooth.rfcomm">
  <m2:Device Id="vidpid:0006 0001 bluetooth">
    <m2:Function Type="name:obexObjectPush"/>
  </m2:Device>
</m2:DeviceCapability>

または、次のスニペットは、完全な ID を使用して、Bluetooth RFCOMM デバイスの DeviceCapabilities を識別します。

<m2:DeviceCapability Name="bluetooth.rfcomm">
  <m2:Device Id="any">
    <m2:Function Type="name:AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE" />
  </m2:Device>
</m2:DeviceCapability>

次のスニペットは、ManufacturerModel の組み合わせを使用して、Bluetooth GATT デバイスの DeviceCapabilities を識別します。

<m2:DeviceCapability Name="bluetooth.genericAttributeProfile">
  <m2:Device Id="any">
    <m2:Function Type="name:heartRate" />
  </m2:Device>
</m2:DeviceCapability>

Bluetooth RFCOMM サービスのサポート

値を使用して、次の RFCOMM サービスがサポートされます。

  • name:serialPort
  • name:obexObjectPush
  • name:obexFileTransfer
  • name:phoneBookAccessPce
  • name:phoneBookAccessPse
  • name:genericFileTransfer

次の RFCOMM サービスはサポートされていません。

  • サービス検出 (0x1000)
  • グループ記述子の参照 (0x1001)
  • PPP を使用した LAN アクセス (0x1102)
  • ヘッドセット (0x1108、0x1112)
  • コードレス テレフォニー (0x1109)
  • オーディオ ソース (0x110A) とシンク (0x110B)
  • インターホン (0x1110)
  • FAX (0x1111)
  • WAP (0x1113、0x1114)
  • NAP (0x1116)
  • GN (0x1117)
  • HCR 印刷 (0x1126) とスキャン (0x1127)
  • 一般的な ISDN アクセス (0x1128)
  • SIM アクセス (0x112D)
  • ヘッドセット – HS (0x1131)
  • GNS サーバー (0x1136)
  • PnP 情報 (0x1200)
  • 汎用ネットワーク (0x1201)
  • 汎用オーディオ (0x1203)
  • 汎用テレフォニー (0x1204)
  • UPnP (0x1205,0x1206)
  • ESDP UPnP IP (0x1300、0x1301、0x1302)
  • ビデオ ソース (0x1303) とシンク (0x1304)
  • HDP ソース (0x1401) とシンク (0x1402)

Bluetooth GATT サービスのサポート

次の GATT サービスは、 値を使用してサポートされます。

  • name:battery
  • name:bloodPressure
  • name:cyclingSpeedAndCadence
  • name:genericAccess
  • name:genericAttribute
  • name:glucose
  • name:healthThermometer
  • name:heartRate
  • name:runningSpeedAndCadence

次の GATT サービスはサポートされていません。

  • ヒューマン インターフェイス デバイス (0x1812)