iOS发现后周边服务还是空的
iOS peripheral service still empty after discovering
我正在尝试使用蓝牙
我有这样的东西:
func centralManager(central: CBCentralManager, didConnectPeripheral peripheral: CBPeripheral) {
Connected = true
TableView.reloadData()
Activityview.stopAnimating()
TabBar.topItem!.rightBarButtonItem = UIBarButtonItem(title: "Suivant", style: UIBarButtonItemStyle.Done, target: nil, action: #selector(Connexion.next))
CM.stopScan()
Scanning = false
Refresh_Button.setTitle("Deconnecté", forState: UIControlState.Normal)
let AlertMessage = UIAlertController(title: "Connecté", message: "Le module est bien connecté", preferredStyle: .Alert)
let ActionAlert = UIAlertAction(title: "Ok", style: .Default) { (action) in }
AlertMessage.addAction(ActionAlert)
self.presentViewController(AlertMessage, animated: true, completion: nil)
peripheral.delegate = self
let servicetoFind = CBUUID(string: "19B10000-E8F2-537E-4F6C-D104768A1214")
peripheral.discoverServices([servicetoFind])
}
我的服务功能:
func peripheral(peripheral: CBPeripheral, didDiscoverServices error: NSError?) {
print("found service")
print(peripheral)
print(peripheral.services)
print(error)
for service in peripheral.services! {
print("Searching for charac...")
peripheral.discoverCharacteristics(nil, forService: service)
}
}
找到我的服务并进入控制台:
found service
<CBPeripheral: 0x13ce1c430, identifier = F39F9D5D-98FE-A350-17BD-21C1185E2089, name = GENUINO 101-1E2D, state = connected>
Optional([])
nil
为什么我的外设服务发现后还是空的,但没有报错?
有什么想法吗?
谢谢!
可以为零。您应该只检查正在使用的 for 循环下的服务。由于您没有获得任何服务,您也可以尝试 peripheral.discoverServices(nil)。它将列出所有服务。
好吧,我重新启动了我的 iPhone,现在一切正常...谢谢你们!
我正在尝试使用蓝牙 我有这样的东西:
func centralManager(central: CBCentralManager, didConnectPeripheral peripheral: CBPeripheral) {
Connected = true
TableView.reloadData()
Activityview.stopAnimating()
TabBar.topItem!.rightBarButtonItem = UIBarButtonItem(title: "Suivant", style: UIBarButtonItemStyle.Done, target: nil, action: #selector(Connexion.next))
CM.stopScan()
Scanning = false
Refresh_Button.setTitle("Deconnecté", forState: UIControlState.Normal)
let AlertMessage = UIAlertController(title: "Connecté", message: "Le module est bien connecté", preferredStyle: .Alert)
let ActionAlert = UIAlertAction(title: "Ok", style: .Default) { (action) in }
AlertMessage.addAction(ActionAlert)
self.presentViewController(AlertMessage, animated: true, completion: nil)
peripheral.delegate = self
let servicetoFind = CBUUID(string: "19B10000-E8F2-537E-4F6C-D104768A1214")
peripheral.discoverServices([servicetoFind])
}
我的服务功能:
func peripheral(peripheral: CBPeripheral, didDiscoverServices error: NSError?) {
print("found service")
print(peripheral)
print(peripheral.services)
print(error)
for service in peripheral.services! {
print("Searching for charac...")
peripheral.discoverCharacteristics(nil, forService: service)
}
}
找到我的服务并进入控制台:
found service
<CBPeripheral: 0x13ce1c430, identifier = F39F9D5D-98FE-A350-17BD-21C1185E2089, name = GENUINO 101-1E2D, state = connected>
Optional([])
nil
为什么我的外设服务发现后还是空的,但没有报错?
有什么想法吗?
谢谢!
可以为零。您应该只检查正在使用的 for 循环下的服务。由于您没有获得任何服务,您也可以尝试 peripheral.discoverServices(nil)。它将列出所有服务。
好吧,我重新启动了我的 iPhone,现在一切正常...谢谢你们!