美文网首页iOS知识iOS开发今日看点
IOS蓝牙4.0(BLE)开发(六)

IOS蓝牙4.0(BLE)开发(六)

作者: 在海边的人 | 来源:发表于2016-09-21 22:32 被阅读654次

           这是BLE开发的最后一篇文章了,这篇文章将介绍一下CoreBluetooth.framework框架的外设模式。也就是APP被作为外设,连接到中心设备的实现。前边的几篇文章,将相关概念已经介绍的比较清楚了,所以这里就不在说明相关名词概念了。

    一. 相关流程

    将APP作为外设,其实就是让手机作为一个硬件设备来被中心设备所连接。所以我们要:

    1.创建外设对象

    2.设置自己所提供的服务

    3.设置提供的特征

    4.将特征添加到相对应的服务中

    5.将自身信息广播出去

    6.与中心设备做数据交互

    二 .代码的实现

    这里我们直接创建一个单视图工程就好了,当然还是需要先导入CoreBluetooth框架。

    1.创建外设对象:在中心模式下我们首先要创建中心管理员对象,外设模式下同理也要先创建外设管理员对象。

    .h文件中先导入CoreBluetooth以及声明代理。

    .m文件创建对象,这里的UUID和广播名字都是自己起的。 2.配置蓝牙信息:

    在外设模式中外设管理员对象也有其设备状态的回调方法,我们要在设备状态正常的时候才去配置信息。

    创建若干特征,然后再创建若干服务,将特征添加到服务中,再将服务添加到外设中:

    接上图:

           你所设置的特征和服务的个数,由自己的需求而定。这里的描述字段CBMutableDescriptor就相当于一个说明书,我们可以给每一个服务和特征都set一个Descriptor,比如说我给上边的读写特征添加了一个Descriptor,那么我们搜索到它的时候就会显示这个特征的名字为“特征1”,其他没有设置的就默认显示其UUID。

    3.配置成功,开始广播

           添加服务到外设置后 ,通过系统的回调方法,可以看到是否添加成功。如果添加成功了,就可以向外部广播自己的信息了。我们还可以通过广播的回调方法来监听是否广播成功。

    4.与中心设备进行数据交互

    广播出去自己的信息以后,如果中心设备与之连接成功,那么就开始进行数据的交互了。数据交互有三种方式:

    (1.)向中心设备不断的发送通知:

    (2.)中心设备请求读取数据:

    (3.)中心设备请求写入数据:

          这就是与中心设备的数据交互的过程了,到这里外设模式的介绍也就结束了,有兴趣的话,大家可以自己写一个中心模式的和一个外设模式的,可以互相通讯。

           IOS的蓝牙4.0(BLE)开发总共写了六篇文章,将整个CoreBluetooth框架的结构以及使用介绍了一遍。外设模式用的不是很多,也相对容易一点,所以篇幅较少。这里将整个蓝牙开发的知识整理出来,即是自己做一个随笔,也是给做蓝牙开发的小伙伴们一个参考,目前BLE的开发基本就是这些了,这些东西也都是我自己再学习还有实际的开发过程中整理出来的。只要理解了这几篇文章的内容,进行这方面的开发工作基本就没有问题了。恳请大家多多指正,一起交流,共同进步!

    相关文章

      网友评论

      • hhhwwwhww:大神,为什么我照着你第六篇走,在广播的时候出问题了,一直广播失败。错误:Error Domain=CBErrorDomain Code=1 "One or more parameters were invalid." UserInfo={NSLocalizedDescription=One or more parameters were invalid.}
        我是用IPAD进行广播的。
        hhhwwwhww:我找到原因了,我有个参数写错了,没问题了,感谢作者的这篇文章!:+1:
      • d992ef27e209:虽然我都没用蓝牙,但还是要看一下的
        在海边的人:@d992ef27e209 以后再搞蓝牙的时候,就不用费劲找资料了,这里有一条龙服务。哈哈。

      本文标题:IOS蓝牙4.0(BLE)开发(六)

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