我的考试遇到了大麻烦。我必须编写一个使用德州仪器制造的外部传感器的 iOS 应用程序,它被称为TI Sensortag。以我的拙见,TI 的文档对于入门级程序员来说确实很差且难以理解。我试图在 E2E 论坛上提问,但他们无法帮助我,他们的回答是“嗯,好吧,我们不知道,你去问问别人”,......
我将 CoreBluetooth 框架添加到我的项目中,并创建了一个 CentralManager。我能够找到我的设备、连接并获取他的姓名和(有时)他的 RSSI。现在我要做的是询问我的 CBPeripheral 对象是否为我提供一些服务或类似的东西。我找到了完整的属性表,但我不知道如何使用它......我知道我必须激活一些服务或类似的东西,但我现在真的不想这样做,我搜索了很多,但我没有找到有用的东西...
我正在尝试使用这种方法启用我的传感器,但我做错了。
-(void) configureSensorTag
{
uint8_t myData = 0x01;
NSData *data = [[NSData alloc] initWithBytes:&myData length:1];
[BLEUtility writeCharacteristic:myPer sUUID:@"F000AA00-0451-4000-B000-000000000000" cUUID:@"F000AA02-0451-4000-B000-000000000000" data:data];
[BLEUtility setNotificationForCharacteristic:myPer sUUID:@"F000AA00-0451-4000-B000-000000000000" cUUID:@"F000AA01-0451-4000-B000-000000000000" enable:YES];
NSLog(@"Configured TI SensorTag IR Termometer Service profile");
}
此外,我正在尝试使用此方法检索 Sensortag 的服务
[peripheral discoverServices:nil];
和他的代表
- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error
{
NSLog(@"Found service");
if (error) {
NSLog(@"Error: %@", error);
}
}
但它永远不会被调用。
有人知道吗?
非常感谢!