连接外部附件蓝牙设备,无需用户交互



根据iOS 6以后的EAAccessoryManager类参考,使用showBluetoothAccessoryPickerWithNameFilter,我们可以显示一个附件选择器,它将帮助用户通过蓝牙唯一ID连接外部附件,包括iAP。

现在,我们想以编程方式连接该列表中的一个外部附件。

我们需要您在以下方面的支持。

我们如何以编程方式连接手机范围内的任何外部设备?。

我们如何在没有用户交互的情况下以编程方式连接任何外部设备?

我们如何通过编程获得用户手机范围内的外部设备列表?

如何获取范围内但未连接的外部设备的EAAccessory对象列表?

我们可以将EAAccessory对象存储在NSUserDefaults中吗?如果是,我们该怎么做?由于EAAccessory EAAccessory不实现encodeWithCoder和initWithCoder方法,因此不允许将其存储到NSUserDefaults中。

使用BTLE我们可以解决这个问题,但我们希望解决方案在BT经典。

您无法通过编程方式连接到蓝牙3.x设备–iOS没有用于此目的的API。如果你的蓝牙3.x符合MfI,那么——理论上——你可以显示ExternalAccessoryBluetoothPicker,这将允许你在应用程序内配对用户交互——从而避免打开设置应用程序的需要。

遗憾的是,自iOS 13以来,大多数应用程序都被打破了。当苹果推出新的基于场景的生命周期时,它就崩溃了。回到经典,它又开始工作了。更多详细信息请点击此处:https://stackoverflow.com/a/70823487/415982

最新更新