问题描述
问题
我正在为蓝牙外设编写一个应用程序,我想直接在我的应用程序中将外设与iPhone配对,而不要求用户转到“设置”应用程序并手动进行配对。我看到“ Sony耳机连接”应用程序确实做到了这一点,并且我希望在我的应用程序中具有相同的功能。我在Core Bluetooth中找不到执行此操作的任何操作。有想法吗?
其他信息
这是Sony应用程序的工作。最初,外围设备(耳机)未与iPhone配对,如下所示:
我运行该应用程序并按照该应用程序的说明打开耳机的电源:
出现一个对话框,我再次点击:
最后,应用程序报告耳机已注册。
现在在“设置”应用程序中,我可以看到耳机已经通过Sony应用程序配对并连接:
解决方法
与MFi设备配对:
您可以导入外部附件框架并使用showBluetoothAccessoryPicker
显示选择附件选择器。
// Objective-C
[[EAAccessoryManager sharedAccessoryManager] showBluetoothAccessoryPickerWithNameFilter:nil completion:nil];
// Swift
EAAccessoryManager.shared().showBluetoothAccessoryPicker(withNameFilter: nil,completion: nil)
注意:不要忘记在Info.plist中添加需要支持的协议
与BLE设备配对:
您可以导入Core Bluetooth框架,并使用scanForPeripherals
中的CBCentralManager
来获取设备列表,并创建自定义选择器以将其显示在didDiscover
委托方法中。
有关扫描和与BLE设备连接的更多详细步骤,请参阅here。