didDiscoverServices和didDiscoverCharacteristicsForService永远不会调用

时间:2015-10-07 14:17:33

标签: objective-c bluetooth-lowenergy ios9 core-bluetooth bluetooth-peripheral

我们有一个蓝牙设备。我们使用// instead of global STEPS and stepsCounter, we decrement at reexecution void moveCamera( int STEPS ) { ... do stuff glutTimerFunc(250, moveCamera, STEPS-1 ); } 。蓝牙设备有数据。我们需要为我的iPhone获取蓝牙设备数据。我们试过这样

core_bluetooth.framework

我们获得了设备名称和设备UUID号码。但是我们的问题是我们从不调用didDiscoverServices并且发现了我的显示器。我希望在我的显示器上碰到我的头,我对此问题感到非常沮丧。请指导我们。我的代码中有什么问题

1 个答案:

答案 0 :(得分:0)

我最近为基于VOIP的应用程序完成了蓝牙功能。 我使用了corebluetooth框架。此外,我使用MPVolumeview(Airplay)在pickerview中显示avaialble蓝牙作为动作表。 来到corebluetooth框架工作,首先#Import corebluetooth框架然后 为Corebluetoothmanager创建实例,并在初始化调用后,遵循委托方法

  • (void)centralManagerDidUpdateState:(CBCentralManager *)central { }

除了这个委托方法,在iOS 8.0之后没有其他委托方法调用。因此,在上面的委托方法中,你可以跟踪iPhone / iPad蓝牙的蓝牙是否有效。如果处于活动状态,请检查音频是蓝牙还是扬声器还是Microbuiltinphone。如果是蓝牙,则将MPVolumeView添加到您的视图以显示蓝牙图标。

与此同时,使用Audioroutechange通知来跟踪外部蓝牙状态ON / OFF。据您所知,您可以了解外部蓝牙设备状态。

我希望这个描述可以帮到你很多。