首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何自动连接CBPeripheral (带iBeacon +蓝牙芯片的BLE设备)且app未运行

如何自动连接CBPeripheral (带iBeacon +蓝牙芯片的BLE设备)且app未运行
EN

Stack Overflow用户
提问于 2021-01-15 15:40:46
回答 1查看 203关注 0票数 0

我有一个智能门锁硬件设备,同时充当iBeacon和CoreBluetooth外设!

我的要求是,当我的应用程序第一次启动时,应用程序将开始监控iBeacon区域,当用户距离小于10米时,应用程序应该使用特定的CBService开始扫描BLE外围设备。

当用户在0.5米距离内时,应用程序应自动连接扫描的CBPeripheral设备并处理门打开操作。

你可以想象一下,当你靠近(大约10米远)大楼入口时,应用程序就会被激活,并开始扫描最近的蓝牙硬件。当你到达入口时,通过执行一些蓝牙操作,门会自动打开。

有人可以帮助我如何使用CoreBluetooth技术实现类似的行为吗?

这个应用程序也应该在后台模式下工作。

到目前为止,我所做的是,启动了iBeacon区域监控并获取回调

代码语言:javascript
复制
func locationManager(_ manager: CLLocationManager, didRangeBeacons beacons: [CLBeacon], in region: CLBeaconRegion) {
        // I am using beacon's accuracy as distance calculation.
        // When accuracy is < 10 meter, I am starting Peripheral scanning using: centralManager.scanForPeripherals(withServices: [{My Custom Service UUID}], options: [CBCentralManagerScanOptionAllowDuplicatesKey: false])
}

我的蓝牙管理器收到一个关于

代码语言:javascript
复制
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber) {
}

现在,我如何使用我的iBeacon和发现的外围设备进行映射&当距离小于0.5米时自动与外围设备进行连接。

简而言之,我的手机应该作为一张RFID卡,用于身份验证和考勤管理

我希望实现与以下视频中显示的类似的行为:https://www.youtube.com/watch?v=Y6XlVE7UKp0

EN

回答 1

Stack Overflow用户

发布于 2021-01-16 14:28:28

如果您有一个iBeacon,并且根据唯一的主要/次要值搜索BLE外围设备,那么您将只扫描一个外围设备。因此,iBeacon和BLE外围设备将匹配。

您可以管理检测到的外围设备数组,并在iBeacon代表didRangeBeacon响应距离为0.5米(信标准确度的值以米为单位)时进行连接。你也可以使用它)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65732198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档