0

嘿,我有一个问题,我的一个朋友构建了一个应该与 iphone 连接的设备。但是现在我正在构建应用程序并且有一个问题,我想将外围设备的 uuid 与我选择的 uuid 进行比较。如果我调用函数 didDiscoverServices 我会得到类似的东西:使用 UUID 找到的服务:使用 UUID 找到的设备信息服务:电池

但我无法将其与以下内容进行比较: if ([service.UUID isEqual:[CBUUID UUIDWithString:@"Battery"]]) {....} 因为字符串不是 uuid。我现在能做什么?有没有其他可能性比较服务?(service.description 也是一个随机数)

4

1 回答 1

-1

根据文档,电池的 UUID 是 0x180F:https
://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx 所以你必须写:[service.UUID isEqual:[CBUUID UUIDWithString:@"0x180F"]]或者你朋友放的 UUID。
您必须了解低功耗蓝牙中的 UUID 是 16 位或 128 位(用于自定义)。阅读文档https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/PerformingCommonPeripheralRoleTasks/PerformingCommonPeripheralRoleTasks.html或至少其中之一UUIDWithString应该可以帮助您理解。

于 2013-11-08T13:23:13.647 回答