蓝牙

作者: 一直努力奋斗的女程序员 | 来源:发表于2016-06-24 15:18 被阅读0次

    在CoreBluetooth框架中,有两个主要的角色:周边和中央(Peripheral and Central) ,整个框架都是围绕这两个主要角色设计的,他俩之间有一系列的回调交换数据。

    周边(Peripheral)是生成或者保存了数据的设备,中央(Central)是使用这些数据的设备。所有可用的iOS设备可以作为周边(Peripheral)也可以作为中央(Central),但不可以同时既是周边也是中央。

    周边和中央这两个角色在CoreBluetooth框架中是用两个类来表示的,CBPeripheralManager这个类代表周边,CBCentralManager 这个类代表中央。在中央这边,一个CBPeripheral 对象代表着相应的和中央连接着的周边;同样的,在周边这边,一个CBCentral 对象代表着相应的和周边连接着的中央。

    你可以认为周边是一个广播数据的设备,他广播到外部世界说他这儿有数据,并且也说明了能提供的服务。另一边,中央开始扫描附近有没有服务,如果中央发现了想要的服务,然后中央就会请求连接周边,一旦连接建立成功,两个设备之间就开始交换传输数据了。

    在中央这边,CBService 类代表服务,CBCharacteristic 类代表特征。在周边这边,CBMutableService 类代表服务,CBMutableCharacteristic 类代表特征。

    创建一个中央:

    1、#import<CoreBluetooth/CoreBluetooth.h>

    2、使当前类遵循CBCentralManagerDelegate和CBPeripheralDelegate两个协议

    3、创建一个数组管理外设,声明一个中央的对象

    @property (nonatomic, strong)NSMutableArray *periperals;

    @property (nonatomic, strong)CBCentralManager *manager;

    4、创建该中央对象,并指定代理,实现数组懒加载

    self.manager = [[CBCentralManager alloc] init];

    self.manager.delegate = self;

    - (NSMutableArray *)peripherals

    {

    if (!_periperals){

    _periperals = [NSMutableArray array];

    }

    return _periperals;

    }

    5、

    相关文章

      网友评论

          本文标题:蓝牙

          本文链接:https://www.haomeiwen.com/subject/mbvodttx.html