我在iOS8中使用CoreBluetooth编写应用程序,使用该应用程序检测并连接到其他手机.我试图找出能够创建连接的最佳方式,同时两个应用程序都是后台运行,但在两个手机都背景+锁定的情况下一直有困难.我遵循了这篇文章的建议:
如何在iOS 7.1的后台和前台中使用蓝牙LE检测附近的设备?
当两部手机都背景+锁定时,我无法建立连接,但我已经能够获得连接,其中外围设备和中央部分背景+锁定,然后我解锁中央(中央仍然在后台) .当我解锁外设虽然没有任何反应.当它们背景但没有锁定时它也可以工作.
因此,为了在解锁"外围设备"时建立连接,我决定在两部手机上创建一个中央和外围设备,以便同时进行扫描和广告.无论哪一个发现另一个将首先停止扫描/广告和连接.我遇到过这个方法的问题,这些问题在以下两个问题中有详细说明:
基本上,我认为当我的两个设备同时尝试相互连接时,他们会挂断尝试连接,并且永远不会在其中任何一个上调用didConnectPeripheral(它们都显示的最后一个消息是它们是试图连接).它偶尔会工作,所以我也有点困惑为什么连接存在概率性质.有没有人对如何处理这个问题有任何建议?如果在两个应用程序都是背景+锁定时建立连接的更好方法,请告诉我,因为这是我原来的问题.
谢谢!
peripherals background simultaneous core-bluetooth cbcentralmanager