0

Доброе утро, это Паван, у меня есть сомнения в corebluetooth. Я использую устройство bluetooth LE. Я написал пример кода в разделе Использование базового bluetooth-рамки в объективе c, я получил имя Bluetooth, UUID, значение RRSI. Я использовал центральный диспетчер, периферийный диспетчер и методы периферийных делегатов. Мой код не выполняет методы делегирования CBPeripheralManager. дает только один UUID kCBAdvDataServiceUUIDs = "00001C00-D102-11E1-9B23-00025B00A5A5", неспособный получить оставшиеся услуги.EverTime Call didDisconnectPeripheral

Здесь мне нужно получить настройки будильника, улучшенные уровни, настройки даты и времени. Я использовал ваш образец проекта, который получил ниже. Периферийные найдено с именем: факультативное ("имя")

UUID: 48D98C88-4FAC-A584-839D-D06D953B941D 
RSSI: -71 
Advertisement Data: ["kCBAdvDataServiceUUIDs": (
    "00001C00-D102-11E1-9B23-00025B00A5A5" 
), "kCBAdvDataTxPowerLevel": 8, "kCBAdvDataIsConnectable": 1] 

Не удался отключиться от периферического с ошибкой: Error Domain=CBErrorDomain Code=7 "The specified device has disconnected from us." UserInfo=0x165d4000 {NSLocalizedDescription=The specified device has disconnected from us.}

Peripheral:

Я не может получить то, что является проблемой. Пожалуйста, помогите мне.

Мы попытались код здесь: http://www.filedropper.com/btbackground-master

ответ

0

Не могли бы вы объяснить немного больше о вашей проблеме. Вы говорите, что это дает только один UUID kCBAdvDataServiceUUIDs = «00001C00-D102-11E1-9B23-00025B00A5A5»

Это данные рекламы для UUID, услуг, он возвращает неполный список UUID, услуг и управляется периферийная.

Чтобы получить полный перечень услуг UUID, вы должны открыть их после подключения к периферийной с discoverServices

Кажется, что вы делаете:

[peripheral discoverServices:@[[CBUUID UUIDWithString:@"0x1811"]]]; 

Это будет обнаружить только услугу с 0x1811 UUID. Если вы хотите открыть для себя все услуги, которые вы должны вызвать

[peripheral discoverServices:nil]; 

Неудавшихся отключиться от периферийного устройства, как представляется, вопрос на периферийной стороне. Он просто говорит вам, что его нельзя отключить, поскольку периферийное устройство уже отключило ваше устройство.

В любом случае, это ваша проблема с ошибкой разъединения или с обнаружением служб? Потому что это не ясно из вашего вопроса.