Tag: 蓝牙低功耗

无法使用iBecon Signal的服务ID扫描CBCentral Manager

使用核心蓝牙处理iBecon信号,我可以使用CBCentralManager扫描选项nil进行search: – Shared.sharedInstance.centralManager?.scanForPeripherals(withServices: nil, options:[CBCentralManagerScanOptionAllowDuplicatesKey:true]) 但是当我提供我想要的服务ID即: Shared.sharedInstance.centralManager?.scanForPeripherals(withServices: [serviceID], options:[CBCentralManagerScanOptionAllowDuplicatesKey:true]) 它永远不会调用didDiscoverPeripheral Delegate方法,我也需要在后台模式下扫描外围设备,根据苹果文档,您需要明确提供服务ID,无论何时需要在后台模式下扫描。 任何人都可以帮助我在这里做错了什么。

SWIFT – BLE通信

我有一个SWIFT应用程序,需要通过Bluetooth LowEnergy模块向我的Arduino发送一个值! 我做了正确的search和连接部分,但我无法发送和接收任何数据。 这里是我的代码来获得可用的BLE设备的列表,并把所有这些放在一个表格视图中,然后单击应用程序提供的单元格以将它们连接到它们! 所有这一切都完美的作品,但我不知道从应用程序发送一个“a”字符到BLE,并从arduino回到应用程序的答案! import UIKit import CoreBluetooth class BluetoothList: UITableViewController,CBCentralManagerDelegate, CBPeripheralDelegate { var listValue = [Lista]() var Blue: CBCentralManager! var conn: CBPeripheral! var a: String! var char: CBCharacteristic! func centralManager(central: CBCentralManager, didDiscoverPeripheral peripheral: CBPeripheral, advertisementData: [String : AnyObject], RSSI: NSNumber) { if (peripheral.name == a){ self.conn = peripheral self.conn.delegate = self Blue.stopScan() Blue.connectPeripheral(self.conn, […]