Core Bluetooth Swift获取设备名称
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Core Bluetooth Swift获取设备名称相关的知识,希望对你有一定的参考价值。
我正在研究核心蓝牙框架,我做了一个关于它的学习测试项目:
class ViewController: UIViewController,CBCentralManagerDelegate,CBPeripheralDelegate {
var centralManager: CBCentralManager = CBCentralManager()
var peripheral: CBPeripheral? = nil
override func viewDidLoad()
{
super.viewDidLoad()
centralManager = CBCentralManager(delegate: self, queue: nil)
}
override func didReceiveMemoryWarning()
{
super.didReceiveMemoryWarning()
}
func centralManagerDidUpdateState(_ central: CBCentralManager)
{
central.scanForPeripherals(withServices: nil, options: nil)
}
@available(ios 5.0, *)
public func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber)
{
let device = (advertisementData as NSDictionary)
.object(forKey: CBAdvertisementDataLocalNameKey)
as? NSString
let isMyIphone = device?.contains("iPhone")
}
}
为了开始我想看到我周围的蓝牙名称,因此我有2个iPhone。一个我用来执行这个'app'进行扫描,我想看到另一个iPhone的名称(蓝牙设置名称是'iPhone'),但是当我开始扫描方法'didDiscover'被调用但设备常数是零。为什么?我错了什么?
答案
如果你使用peripheral.name更好 让device =(advertiseData as NSDictionary).object(forKey:CBAdvertisementDataLocalNameKey)as?的NSString
以上是关于Core Bluetooth Swift获取设备名称的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 中使用 Core Bluetooth 获取蓝牙设备的唯一 ID
有没有办法可以在 Swift 中使用 Core Bluetooth 更改另一部 iPhone 上的视图控制器?