在iOS中,通过电话[CBCentralManager scanForPeripheralWithServices:options:]
,您可以指定服务UUID
来选择BLE
外围设备。我可以使用哪种服务UUID
来发现SensorTag
?
这是一个代码示例:
- (void)startScan {
NSDictionary *options = @{ CBCentralManagerScanOptionAllowDuplicatesKey: @YES };
// This UUID doesn't work.
NSArray *services = @[[CBUUID UUIDWithString:@"F000AA00-0451-4000-B000-000000000000"]];
[self scanForPeripheralsWithServices:services options:options];
}
答案 0 :(得分:1)
虽然SensorTag有一个服务UUID F000AA00-0451-4000-B000-000000000000,但我没有任何运气扫描方式。我不得不像这样扫描:
[central scanForPeripheralsWithServices:nil options:nil];
然后遍历服务以查看外围设备是否具有我想要的内容。作为旁注,我无法更新SensorTag上的固件,并希望他们最终解决此问题。
答案 1 :(得分:0)
您可以在此处下载TI示例应用程序的源代码:http://www.ti.com/tool/sensortag-sw iOS示例包含您正在寻找的内容。
否则,您可以使用nil
服务进行扫描,并在收到advertisementData
回调时检查(最简单的打印)didDiscoverPeripheral
。与服务相对应的密钥将告诉您外围设备所宣传的内容,您可以使用这些密钥来缩小扫描范围。