我需要通过蓝牙将ASCII码发送到第三方设备。 希望有可能与spp有关。我的术语可能是错的。我不太了解这个编程领域。
在centralManagerDidUpdateState
我正在扫描外围设备:
CBUUID *cbuuidService = [CBUUID UUIDWithString:@"0x1101"];
NSArray *service = @[ cbuuidService ];
NSDictionary *options = @{ CBCentralManagerScanOptionAllowDuplicatesKey : @YES };
[central scanForPeripheralsWithServices:service options:options];
但didDiscoverPeripheral
从未打过电话。
我尝试在没有服务的情况下进行扫描,它具有相同的效果。
我做错了什么?我需要cbuuid
什么,我在哪里可以找到它?感谢您的帮助。
答案 0 :(得分:1)
相信CoreBluetooth非常难以使用。
使用LGBluetooth(它可以通过CoreBluetooth)而不是使用那个混乱的框架。
[[LGCentralManager sharedInstance] scanForPeripheralsByInterval:10 completion:^(NSArray *peripherals) { }];
这是一个按间隔扫描的例子。
答案 1 :(得分:1)
您需要将一个设备作为中心(您可以使用),将一个设备作为外围设备。因此,假设您使用MB Air作为中心,您需要在iPad上启动CBPeripheralManager并让它发布并宣传服务。然后你应该能够在MB上发现它。
我想最简单的方法是获得一个可用的外围设备(例如心率带),这样您就可以熟悉CBCentralManager的使用方法。然后你就可以开始实现你自己的外围设备。
PS:我不确定将0x
放在标识符的开头是否正确。