小米手环iOS开发实战(一):iOS蓝牙框架CoreBluetooth

本文介绍了如何使用Swift3.0通过CoreBluetooth框架与小米手环进行蓝牙连接,涵盖CoreBluetooth的基本使用,包括导入框架、声明协议、初始化、扫描设备、连接设备等关键步骤。同时,文章提醒在iOS10以上版本需要在Info.plist声明蓝牙权限。后续文章将深入到实际操作小米手环的示例。
摘要由CSDN通过智能技术生成

小米手环iOS开发实战(一):iOS蓝牙框架CoreBluetooth

本项目为对小米手环进行二次开发,利用了小米手环蓝牙连接并不安全的特性,连接后可以获取手环数据,并可修改数据。
本实例使用Swift3.0语言,Objective-C的蓝牙模块处理有略微不同,具体可见文档。
本节首先介绍iOS蓝牙框架CoreBluetooth,在此仅介绍本实例涉及到的蓝牙操作内容,如果大家有需要,可以专开一贴介绍CoreBluetooth的使用。


章节目录

  • iOS蓝牙框架介绍
  • CoreBluetooth.framework导入
  • CoreBluetooth的基础使用

iOS蓝牙框架介绍

CoreBluetooth介绍

在iOS开发中,实现蓝牙通信的方法有两种。分别是GameKit.framework以及CoreBluetooth.framework,前者在iOS5后基本被淘汰。

在苹果文档中,写了Communicate with Bluetooth 4.0 low-energy devices,也就是说仅支持蓝牙4.0低功耗协议(BLE)。

对于iOS10以上的设备,苹果注明以下信息:

An iOS app linked on or after iOS 10.0 must include in its Info.plist file the usage description keys for the types of data it needs to access or it will crash. To access Bluetooth peripheral data specifically, it must include NSBluetoothPeripheralUsageDescription.

也就是说需要声明并注册蓝牙权限的使用。

CoreBluetooth协议
首先提及蓝牙使用,在此引入两个概念:中心设备和外围设备。

  • 中心设备(客服端):作为中央管理器的设备,也就是本实例中的iOS设备。
  • 外围设备(服务器):也就是外部设备,扮演者产生数据的角色。许多传感器、蓝牙服务设备均是外围设备。本实例中小米手环就是外围设备。

同时数据传输还涉及到以下几个值:

  • UUID:相当与使用这个模块对映的应用的标识。
  • RSSI:信号强度,利用此信息可进行蓝牙测距,后面将进行讲解。

CoreBluetooth中涉及以下对象类:

  • CBCentralManager:中心设备类
  • CBPeripheral:外围设备类
  • CBCharacteristic:设备特征类

接下来就看一下如何导入蓝牙框架。


CoreBluetooth.framework导入

  1. 首先新建Xcode项目
  2. 在General->TARGETS->Linked Framworks and Libraries中点击添加并选择CoreBluetooth.framework导入。
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值