我在Xcode 6中制作了一个非常简单的iOS应用,尝试使用CoreBluetooth并与我的Polar H6心率监测器进行通信。由于某种原因,没有调用didDiscoverPeripheral方法。
我在StackOverflow上发现了以下类似的问题,但是你或者有点不同或者没有真正为我解答:
我在viewDidLoad中的代码:
NSArray *services = @[[CBUUID UUIDWithString:HRM_HEART_RATE_SERVICE_UUID]];
CBCentralManager *centralManager = [[CBCentralManager alloc] initWithDelegate:self queue:nil];
[centralManager scanForPeripheralsWithServices:services options:nil];
self.centralManager = centralManager;
正在调用方法centralManagerDidUpdateState
,它告诉我状态等于CBCentralManagerStatePoweredOn
。
永远不会调用didDiscoverPeripheral
方法,即使我将nil
传递给scanForPeripheralsWithServices
方法也是如此。
在应用程序商店中,我已下载了一款名为LightBlue的应用程序。它是一个非常简单的应用程序,可以测试任何使用蓝牙4.0 LowEnergy的设备。它扫描外围设备并显示有关设备及其服务的详细信息。 LightBlue应用确实看到我的HeartRate显示器,而我自己的小应用程序没有..
有没有人有任何提示或线索如何推进?
(我正在使用Xcode 6和iPhone 6和iOS 8)