2016-05-17 4 views
0

私はBLEデバイスと統合されたアプリケーションを持っています。私は任意の数のデバイスに接続することができます。 [CBCentralManager connectPeripheral:options:]経由でアプリからデバイスにペアリングを開始すると、以前のペアリング情報が見つからない場合、システムのBluetoothペアリング要求アラートが発生します。これはすべて素晴らしいです。複数のBluetoothペアリングリクエストダイアログを一度に処理する

ただし、複数のデバイスの特性を一度に検出、ペアリング、読み取りする機能を実装しています。デバイスが以前にペアになっていれば、これは素晴らしいことです。しかし、これが複数のデバイスの最初のペアリングであれば、ペアリング要求アラートコントローラの1つのみが表示されます。これをさらに困難にするのは、ペアリングダイアログからの応答を待っている他のデバイスのCBからの接続エラーに失敗したということです。

注意が必要な複数のペアリング要求がある状況をうまく処理できる方法はありますか?これらの少なくとも一方が可能であった場合は、参考になる:

  • 優れたペアの要求を完了させる能力順次
  • 他のデバイスのための失敗したペアリングの
  • 通知ペアリング要求ダイアログがあるかどうかの
  • 知識ペアリングを初期化する前を解雇したので、私はあなたがペアリングと対話することができますCoreBluetoothにはAPIはありません時間

答えて

0

で1をペアにすることができます。 ペアリングできる周辺機器のファームウェアを制御していますか?その場合は、通知を有効にして、ペアリングプロセスの進行状況をイベントに送信できます。あなたはアプリ内でペアリングプロセスの現在の状況を知ることができます。

いくつかの例では、ステータスとエラーコード(詳細は周辺BLEスタックに依存します)を見ると、iOSがペアダイアログを表示するタイミング、ユーザーがキャンセルを押したタイミング、ペアリングが成功したタイミングを特定できます。また、iOSが対話ダイアログを表示しなかったときを識別することも可能です。

関連する問題