2017-08-17 12 views
1

BLE経由でデバイスに接続するSwiftアプリケーション(iOS)に取り組んでいます。HIDサービスが表示されない

私は、デバイスに接続するために管理されているコードを書いて、広告データを取得することができましたが、didDiscoverServicesメソッドを使用してサービスをスキャンすると、HIDサービスではなく、 デバイス情報、バッテリー、およびHIDサービスは、広告データでは表示されますが、didDiscoverServicesメソッドでは表示されません。 didDiscoverServicesメソッドのBatteryとDevice情報の特性にアクセスできます。 HIDがiOSで管理されていて、アプリでは管理されていない複数の場所を読みました。

HIDサービスにアクセスする方法はありますか?

答えて

1

残念ながら、このサービスにアクセスする方法はありません。 Appleは特定のBLEサービスを積極的にフィルタリングし、CoreBluetooth API経由でアクセスすることはできません。特に、Hatt Over Gattサービスはシステムによって管理されているため、デバイスを使ってテキストなどを入力することはできますが、アプリ内のイベントを傍受することはできません。

上記のフィルタリングは、周辺機能にも適用されます。 Gatt UIDを介してHIDを新しいサービスとしてCBPeripheralManagerに追加しようとすると、エラーが発生します。

関連する問題