2016-05-17 76 views
0

我有一個與BLE設備集成的應用程序。我可以連接到任意數量的設備。當通過[CBCentralManager connectPeripheral:options:]啓動從應用程序到設備的配對時,如果未找到先前的配對信息,則系統藍牙配對請求警報將觸發。這一切都很好。一次處理多個藍牙配對請求對話框

但是,我正在實現一種功能,可以一次發現,配對並讀取多個設備的特徵。如果設備之前已配對,這也很有用。但是,如果這是多個設備中的第一個配對,則僅顯示配對請求警報控制器中的一個。使這更加困難的是,我也沒有收到來自CB的其他設備等待配對對話響應的失敗連接錯誤。

有什麼辦法可以優雅地處理需要注意多個配對請求的情況?這將是有益的,如果它們中的至少一個是可能的:

  • 出色地完成了對請求的能力依次
  • 其他設備未能配對的
  • 通知
  • 知識的配對請求對話框是否會之前觸發初始化配對,所以我可以配對一次一個

回答

0

有在CoreBluetooth沒有的API,可以讓你與配對互動。 你是否控制了你想要配對的外設的固件?如果是這樣,您可以啓用通知併發送事件配對過程的進展情況。這樣你就可以在應用程序中知道配對過程的當前狀態。

對於某些示例,通過查看狀態和錯誤代碼(詳細信息取決於您的外圍BLE堆棧),您將能夠識別iOS何時顯示對話框,何時按下取消以及配對成功。它也可以識別iOS何時沒有配對對話框。