蓝牙iOS-swiftiOS Developer

iOS CoreBluetooth的swift实现 (2)

2016-09-25  本文已影响724人  COOPERC

iOS CoreBluetooth的swift实现(1)

iOS CoreBluetooth的swift实现 (3)

不妨想一下,我们在与人交流的时候需要做些什么,当然,我们先实现设备作为central时的数据接收和处理。

1.辨明对方的身份,如果他是你想听他说话的人,那就听他说吧(废话)

2.接收别人说的话,大脑对这些信息进行处理。

3.注意保持听取,不要就听一会儿,态度端正一点。

在程序中我们做的方式可以类比过去(用CBCentralManager实现)

1.搜索相应Peripheral并连接

2.连接后进行数据接收,对里面的characteristic进行读写。

3.保持数据的更新回调

贴一下代码来解释一下

central

当然现在还没有太多内容,取决于你的需求

COCenManager.scanForPeripheralsWithServices([CBUUID]?, options: [String:AnyObject]?)

这个方法里要传入设备serviceUUID数组,设备就会搜索具有这些UUIDservice的设备,这个就需要知道UUID的一些东西了,他其实是作为一个标签一样的存在,可以自己查一下相关的知识,这里不再详细讲解。UUIDnil,那就会搜索所有设备。

经过这几步(参数确定,不要像我这样。)我们就建立了设备与peripheral的连接,注意,如果连接失败需要在didFailToConnectPeripheral里做出响应。

discoverService

discoverService传入一个CBUUID数组,如果填入nil则是默认搜索了所有的service当然不推荐这么做,这样会耗费没必要的电量和时间。当调用这个函数成功之后,设备会回调

func peripheral(peripheral:CBPeripheral, didDiscoverServices error:NSError?)

在这个函数里面我们可以对所需要的service进行提取处理。首先我们最想做的就是提取出他所提供的的内容--characteristic。

discoverCharacteristics([CBUUID]?, forService:CBService)

就是这个了!用peripheral获得相应serviceCharacteristicsUUID数组,就可以读取啦。

上一篇下一篇

猜你喜欢

热点阅读