Надеюсь, у вас все хорошо, у меня возникла проблема, когда я ищу устройства Bluetooth, я получаю некоторые устройства с именем, но большинство устройств не предоставляют свое имя, и эти устройства отображают свое имя вBluetooth для Iphone, я попробовал некоторые решения
1 - сначала подключиться к устройству, а затем получить имя в делегате (имя_периодального_диспута), в этом я получаю ответ от нескольких устройств, в то время как другие устройства застряли в состоянии подключения 2- я пытался найтидля устройств с некоторыми задержками, чтобы я мог найти имя, но все еще застрял в той же проблеме
extension LandingPage : CBCentralManagerDelegate , CBPeripheralManagerDelegate {
func centralManagerDidUpdateState(_ central: CBCentralManager) {
switch (central.state) {
case .poweredOff :
print("bluetooth is off ")
self.mainPeripheral.removeAll()
case .poweredOn :
print("bluetooth is on ")
manager?.scanForPeripherals(withServices: nil, options: nil)
}
}
return
Фактический результат:
<CBPeripheral: 0x282d090e0, identifier = D94CC0E6-0340-8406-4688-C38D593F3201, name = (null), state = disconnected>
<CBPeripheral: 0x282d0d040, identifier = 04F5A632-3FBE-47A6-C6A6-2DDF9975184C, name = (null), state = disconnected>
<CBPeripheral: 0x282d0d040, identifier = CE0FD194-7E7D-4004-C50B-049C2958F495, name = (null), state = disconnected>
<CBPeripheral: 0x282d0d040, identifier = E780781F-7D6B-8052-9743-ECFEB5C534C8, name = (null), state = disconnected>
Ожидается:
<CBPeripheral: 0x282d0c0a0, identifier = 803732A6-31F9-A740-EC6A-8C9E3CDE8F71, name = Lefun, state = disconnected>
<CBPeripheral: 0x282d0d040, identifier = 6C19BC9F-1891-82DE-51D6-0C0E371F2E03, name = LH719, state = disconnected>