美文网首页iOS快速入门程序员
iOS开发之BLE(一)——理论知识

iOS开发之BLE(一)——理论知识

作者: iOS开发之家 | 来源:发表于2019-03-22 19:39 被阅读7次

在iOS开发中,我们最常用的蓝牙开发框架应该是Core Bluetooth,因为它可以与第三方蓝牙设备交互(必须要支持蓝牙4.0),蓝牙4.0以低功耗著称,所以一般也叫BLE(Bluetooth Low Energy),目前广泛应用于智能手环,智能嵌入式设备,智能家居等领域。笔者最近需要用到这个知识,所以一起来学习一下吧。在Core Bluetooth中提供了与蓝牙设备进行通信所需的类与协议,所以在开发之前一定要将他们的关系弄清楚,那么开发起来才会事半功倍。

Apple 官方文档地址: https://developer.apple.com/documentation/corebluetooth

重要的类与协议

  • CBCentral:中心设备,发起连接的是CBCentral

  • CBCentralManager:中心设备管理者,类似定位中的CLLocationManager

  • CBPeripheral:外围设备,被连接的设备是CBPeripheral

  • CBService:外围设备的服务,每个外围设备都会提供很多服务

  • CBCharacteristic:外围设备的特征,包含在每个服务里

  • CBDescriptor:用于描述CBCharacteristic的信息或属性

  • CBCentralManagerDelegate:CBCentralManager对象遵守的协议,用于监视外围设备的发现、连接和检索

  • CBPeripheralDelegate:CBPeripheral对象遵守的协议,用于监视外围设备的服务和属性的发现、检索和交互

image

外围设备、服务和特征值的关系

两种开发模式

  • 中心模式:如下图左边所示,以App为中心,连接其他的外设进行通信;( 常见开发模式

  • 外设模式:如下图右边所示,使用手机作为外设,连接其他中心设备进行通信;

image

两种开发模式

中心模式的开发步骤

  1. 创建CBCentralManager实例进行蓝牙管理

  2. 搜索外围设备

  3. 连接外围设备

  4. 获得外围设备的服务

  5. 获得服务的特征

  6. 从外围设备读数据(读取或订阅)

  7. 向外围设备写数据

  8. 断开连接

注意问题

  • 不要对Core Bluetooth中的任何类进行子类化

  • iOS 10以后需要在info.plist文件中加上NSBluetoothPeripheralUsageDescription

如果你依然在编程的世界里迷茫,不知道自己的未来规划,小编给大家推荐一个IOS高级交流群:458839238 里面可以与大神一起交流并走出迷茫。小白可进群免费领取学习资料,看看前辈们是如何在编程的世界里傲然前行!
群内提供数据结构与算法、底层进阶、swift、逆向、整合面试题等免费资料
附上一份收集的各大厂面试题(附答案) ! 群文件直接获取
各大厂面试题

image

相关文章

  • iOS开发之BLE(二)——外设连接与断开

    在 iOS开发之BLE(一)——理论知识 一文中,主要对iOS开发中BLE的基本理论知识进行了介绍,本文以中心模式...

  • iOS开发之BLE(二)——外设连接与断开

    在iOS开发之BLE(一)——理论知识一文中,主要对iOS开发中BLE的基本理论知识进行了介绍,本文以中心模式为例...

  • iOS开发之BLE(一)——理论知识

    在iOS开发中,我们最常用的蓝牙开发框架应该是Core Bluetooth,因为它可以与第三方蓝牙设备交互(必须要...

  • iOS BLE Scan

    iOS扫描BLE设备的方法 iOS在使用CoreBluetooth框架进行BLE开发时,通常作为中心设备(Mast...

  • 12月第三周

    iOS-BLE蓝牙开发持续更新 - IOS - 伯乐在线 ReactiveCocoa 中 RACSignal 所有...

  • ios蓝牙参考

    参考文章:iOS中的蓝牙开发iOS-BLE蓝牙开发demo 官网 转载 CenteralManager学习笔记

  • iOS-蓝牙开发Mark

    iOS蓝牙的开发专题[http://liuyanwei.jumppo.com/2015/07/17/ios-BLE...

  • CoreBluetooth

    iOS-BLE蓝牙开发持续更新 - 简书 蓝牙打印小票 一个第三方 IOS BLE4.0蓝牙和外设连接和收发数据的...

  • macOS-BLE蓝牙4.0开发

    macOS-BLE蓝牙4.0开发 !!!中心模式 !!! macOS的BLE程序代码和iOS差不多,只需要修改一些...

  • iOS BLE开发

    简介 BLE(Bluetooth Low Energy),低功耗蓝牙,使用2.4GHz无线电频率。从蓝牙4.0开始...

网友评论

    本文标题:iOS开发之BLE(一)——理论知识

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