2013-11-08 5 views
-1

Эй У меня проблема, что мой друг построил устройство, которое должно быть связано с iphone. Но теперь я создаю приложение и имею проблему, что я хотел бы сравнить uuid с периферии с моим выбранным uuid. Если я вызываю функцию didDiscoverServices я получаю такие вещи, как: службы нашли с UUID: Информация об устройстве службы нашли с UUID: Батареяbluetooth - UUID от периферийного устройства - это нормальная строка

Но я не могу сравнить его с: если ([service.UUID IsEqual: [CBUUID UUIDWithString : @ "Аккумулятор"]]) {....} , потому что строка не является uuid. Что мне теперь делать? Есть ли другая возможность сравнить услугу? (service.description также случайное число)

+1

[service.UUID isEqual: [CBUUID UUIDWithString: @ "0x180F"]] – Larme

+0

спасибо, то это будет с примером батареи: ... UUIDWithString: @ "0x180FBattery"]]? – user2675468

ответ

-1

UUID от батареи является 0x180F согласно документу: https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx
Таким образом, вы должны написать: [service.UUID isEqual:[CBUUID UUIDWithString:@"0x180F"]] или UUID ваш друг поставил.
Вы должны понимать, что UUID в Bluetooth Low Energy составляет 16 бит или 128 бит (для пользовательских). Чтение документа https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/PerformingCommonPeripheralRoleTasks/PerformingCommonPeripheralRoleTasks.html или по крайней мере один из UUIDWithString должен помочь вам разобраться.

Смежные вопросы