web-dev-qa-db-ja.com

leの代わりにbluetoothクラシックを使用する方法

Dennis Mathewsの回答 を参照して、iOSでLEの代わりにBluetoothクラシックをどのように指定しますか? コアBluetoothフレームワークとは異なるAPIはありますか?

19
joels

JoelsiOSでBluetoothクラシックを使用する非常に明確な方法があります。外部アクセサリフレームワークを使用します(ただし、Bluetoothクラシックに加えて直接ハードウェア接続も含まれます)。

開始するには、ExternalAccessory.frameworkを追加し、plist内の必要なバックグラウンドモードで「App communicates with an accessory」を指定する必要があります。ただし、Bluetoothクラシックでは、ユーザーはシステムのBluetooth設定からBluetoothデバイスを追加する必要があることに注意してください。アプリ側からデバイスを追加できるのはBluetooth LEのみです。

外部アクセサリフレームワーク のドキュメントを確認してください

MFiプログラムに関する質問への回答として、これにより次のことが明確になります。

MFiアクセサリと通信するiOSアプリを開発したいと考えています。 MFiプログラムに参加する必要がありますか?いいえ。iOSアプリの開発者はMFiプログラムに参加する必要はありません。アプリ開発者が必要とするものはすべて、iOS SDKで提供される外部アクセサリフレームワークにあります。 iOS SDKにアクセスするには、iOS開発者プログラムに参加してください: https://developer.Apple.com/programs/ios/

詳細については、 MFi FAQ を参照してください。

20
Tommy Devoy

外部アクセサリがiOSへの接続で高帯域幅を必要とせず、2.x/classic BTを使用する(または使用する必要がある)場合(非常に低い帯域幅である4.x/LE/Smartの代わりに) MFiダンスは必要ありません)アクセサリでBT HIDキーボードをエミュレートすることで通信できる場合があります。

特に、HIDリバースチャネルがかなり制限されているため、最適ではありません(基本的なキーボード構成でCaps Lockキーを点灯するようなものだと思います(正しく思い出せば、HID 7ページのマッピング)。OTOH、主なタスクがプッシュの場合データをiOSデバイスに送信し、キーストロークとしてデータを送信することはそれほどひどいことではありません(テスト中には美徳と見なされることもあります:)

HIDデバイスは、テーブルで定義されたキーマップで追加機能を宣言できますが、iOSアプリが認可されたAPIを使用してそれらの代替マッピングを取得できるかどうかはわかりません。

1
Taryn