-1
我已经实施了两种方法来检查蓝牙功能的可用性并找到我们周围的可发现设备。现在我想找到我们周围的外围设备的距离,对于这些功能,可以使用哪种方法以及要实施哪些代码。期待一个解决方案与示例代码swift中的哪种方法可用于查找BLE设备之间的距离?
func centralManagerDidUpdateState(central: CBCentralManager!) {
println("\(__LINE__) \(__FUNCTION__)")
println("checking state")
if central.state != .PoweredOn {
// In a real app, you'd deal with all the states correctly
return
}
central.scanForPeripheralsWithServices(nil,options:nil)
}
func centralManager(central: CBCentralManager!, didDiscoverPeripheral peripheral: CBPeripheral!, advertisementData: [NSObject : AnyObject]!, RSSI: NSNumber!)
{
var localname: NSString = advertisementData[CBAdvertisementDataLocalNameKey]! as NSString
println("Discovered: \(peripheral.name)")
peri = ["\(peripheral.name)"]
if localname != " "
{
//centralManager!.stopScan()
//self.peripheral = peripheral
peripheral.delegate = self
centralManager!.connectPeripheral(peripheral, options: nil)
}
}
- 谢谢
您可以读取'rssi'值作为距离的近似值,但不可能将其转换为实际距离测量值 – Paulw11 2015-02-09 08:05:06
我能以米为单位显示近似距离吗? – SARATH 2015-02-09 08:43:14
这将是非常接近 - 可能+/- 5米或更多 – Paulw11 2015-02-09 08:45:25