Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从macOS应用程序连接到作为外围设备的后台iOS应用程序_Ios_Swift_Macos_Core Bluetooth - Fatal编程技术网

从macOS应用程序连接到作为外围设备的后台iOS应用程序

从macOS应用程序连接到作为外围设备的后台iOS应用程序,ios,swift,macos,core-bluetooth,Ios,Swift,Macos,Core Bluetooth,我有一个iOS和macOS应用程序,大量使用核心蓝牙。该应用程序的核心功能包括让中央设备(CBCentralManager)连接到外围设备(cbperipheraldmanager),检索一些数据,然后断开连接。任何一种设备,无论是macOS还是iOS,都可以作为中央设备或外围设备,具体取决于谁需要数据 起初我认为我的代码有问题,但在使用两台iOS设备测试应用程序后,一台能够连接并从外围设备提取数据,即使外围设备已锁定且应用程序位于后台。现在,根据调查,这是一种预期: …它们只能由显式扫描它们的

我有一个iOS和macOS应用程序,大量使用核心蓝牙。该应用程序的核心功能包括让中央设备(
CBCentralManager
)连接到外围设备(
cbperipheraldmanager
),检索一些数据,然后断开连接。任何一种设备,无论是macOS还是iOS,都可以作为中央设备或外围设备,具体取决于谁需要数据

起初我认为我的代码有问题,但在使用两台iOS设备测试应用程序后,一台能够连接并从外围设备提取数据,即使外围设备已锁定且应用程序位于后台。现在,根据调查,这是一种预期:

…它们只能由显式扫描它们的iOS设备发现

有没有办法让macOS应用程序发现外围设备,即使它们是后台的?我确信我写的代码是正确的,因为它在iOS和macOS上是相同的

更新1 我相信这可能只是不确定如何处理这个问题。在macOS上使用Apple的Bluetooth Explorer,我可以找到所需的设备,并且可以查看和读取自定义服务的数据


此发现通过我的iOS设备中有关读取请求的日志进行验证,这些请求来自我的
外围设备管理器(CBPeripheralManager,didReceiveRead:CBATTRequest)

您能够连接的iOS设备是否具有与Mac相同的iCloud登录?这会(积极地)影响Mac连接到的能力it@Paulw11是的,是的!