- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我使用时:
CBUUID * uuid = [CBUUID UUIDWithString:@"1800"]; // GAP
DEBUG_LOG(@"CBUUID: %@",uuid); // CBUUID: Generic Access Profile
_centralMan = [[CBCentralManager alloc] initWithDelegate:self queue:nil];
[_centralMan scanForPeripheralsWithServices:[NSArray arrayWithObject:uuid]
options:nil];
我找不到我的外设,但当我使用时:
_centralMan = [[CBCentralManager alloc] initWithDelegate:self queue:nil];
[_centralMan scanForPeripheralsWithServices:nil
options:nil];
…它立即显示。
当我连接时,我能够发现/读取/写入我期望的所有服务。我的理解是 GAP 使这成为可能。我也尝试过CBUUID
我知道正在运行的其他服务(特别是“1804”,TX 电源服务),但无济于事;扫描从未发现任何东西。
即使服务正在运行(我可以在连接时与它们进行通信),当我扫描时将服务 UUID 数组传递为 nil
这个委托(delegate)方法被称为...
-(void) centralManager:(CBCentralManager *)central
didDiscoverPeripheral:(CBPeripheral *)peripheral
advertisementData:(NSDictionary *)advertisementData
RSSI:(NSNumber *)RSSI {
DEBUG_LOG(@"Found peripheral w/ UUID: %@ RSSI: %@ \n AdvData: %@",peripheral.UUID,RSSI,advertisementData);
DEBUG_LOG(@"Services found: %d",peripheral.services.count);
for (CBService * service in peripheral.services) {
DEBUG_LOG(@"Found service: %@ w/ UUID %@",service, service.UUID);
}
}
…它总是报告“发现服务:0”。我应该期待 services
要填充扫描期间找到的服务的数组? (我认为这至少部分可能,基于 scanForPeripheralsWithServices:[NSArray arrayWithObject:uuid]
。)
options:nil
这可能是我的外围设备服务广告的问题吗?我是否错误地使用了 API?非常感谢任何指导! :-)
PS:我对蓝牙很陌生。
PPS:我控制外设的源(它是 CC2540DK)。因此,我可能会相信问题就在那里。
最佳答案
事实证明,我们的外围代码并未像 this Bluetooth spec 那样宣传 UUID .
当我们将它们放入广告包中时,iOS 就毫不费力地把它们捡了起来。
关于ios - 扫描特定服务 CBUUID 时找不到外围设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11216248/
我有一个基于 Java 的应用程序 (Android),我希望能够在后台执行可能长时间的操作。 AsyncTask 上的 Android 文档建议不要将它们用于可能运行时间超过几秒的任务(这是为什么?
所以我有外围 BLE 设备,我需要一些标识符以便稍后与另一部 iPhone 共享。示例我将 iPhone 'A' 连接到外围设备。 iPhone 'A' 将外围设备的标识符保存到数据库中,稍后我可以轻
当我指定这样的服务时: centralManager.scanForPeripherals(withServices:[BEAN_SERVICE_UUID],选项:[CBCentralManagerS
我是一名优秀的程序员,十分优秀!