LGBluetooth 是个简单的,基于块的,轻量级 CoreBluetooth 库;

iOS 6引入了Core Bluetooth,让低功耗蓝牙设备之间的通信变得简单。但如果CoreBluetooth,你会发现其中一些语法会变得非常凌乱。

LGBluetooth是一个简单的基于block的,轻量级的开源库,可以帮你更简单地使用CoreBluetooth API,执行一些主要的CoreBluetooth任务,比如扫描或者检索蓝牙设备,连接设备,扫描可用的设备,
或者从蓝牙设备中读/写值。

使用LGBluetooth的原因:

总所周知,CoreBluetooth用起来很复杂—其中的对象方法很凌乱。

例如 connectPeripheral:options: 方法在 CBCentralManager 类中,discoverCharacteristics:forService:、writeValue:forCharacteristic:type:、readValueForCharacteristic: 都需要通过周围设备进行调用。

这些都使得 CoreBluetooth 用起来相当麻烦。比如读取一个特征值,你需要在中心设备调用“connect”方法,等待Central delegate的回调结果,然后调用”discover services”,等待peripheral delegate的回调结果,然后是调用”discover characteristic”和”readValue”函数并分别等待回调结果。如果你的项目同时进行两个蓝牙连接呢,代码会非常复杂,可能会有很多bug

别担心,现在你不用管这些了—LGBluetooth使用块作为回调,现在你可以使用现代代码和分层调用。

开始使用步骤:

LGBluetooth 遵循 MIT 开源许可证发布

开源地址:https://github.com/LGBluetooth/LGBluetooth

下载LGBluetooth SDK。

1.首先,将下图 的文件拖进来

2.添加CoreBluetooth.framework

3. 建立桥接文件,newfile-source-header file-创建,一般起名称为:项目名称-Bridging-Header.h,要在project-target-build setting -swift compiler-objective-c Bridging Header设置路径:项目名称/项目名称-Bridging-Header.h即可。

4.建立一个名字为PrefixHeader.pch文件,还要在target里面设置.pch文件路径哦(项目名称/.PrefixHeader.pch),不然会报错的。引用如下:

如图:

然后就可以调用LGBlueTooth了.

轻量级iOS蓝牙库:LGBluetooth(项目中用过的)的更多相关文章

  1. iOS 项目中用到的一些开源库和第三方组件

    iOS 项目中用到的一些 iOS 开源库和第三方组件 分享一下我目前所在公司 iOS 项目中用到的一些 iOS 开源库和第三方组件, 感谢开源, 减少了我们的劳动力, 节约了我们大量的时间, 让我们有 ...

  2. iOS、mac开源项目及库汇总

    原文地址:http://blog.csdn.net/qq_26359763/article/details/51076499    iOS每日一记------------之 中级完美大整理 iOS.m ...

  3. 最全面的iOS和Mac开源项目和第三方库汇总

    标签: UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UIT ...

  4. iOS 蓝牙开发(四)BabyBluetooth蓝牙库介绍(转)

    转载自:http://www.cocoachina.com/ios/20151106/14072.html 原文作者:刘彦玮 BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBlue ...

  5. IOS 蓝牙相关-BabyBluetooth蓝牙库介绍(4)

    BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你 ...

  6. iOS、mac开源项目及库(感谢原作者的分享)

    目录 模糊效果 富文本 表相关 HUD与Toast 其他UI 其他动画 网络测试 网络聊天 Model 数据库 PDF 摄像照相视频音频处理 消息相关 消息推送服务器端 版本新API的Demo 测试及 ...

  7. ios蓝牙开发(四)BabyBluetooth蓝牙库

    BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你 ...

  8. https://github.com/coolnameismy/BabyBluetooth github上的一个ios 蓝牙4.0的库并带文档和教程

    The easiest way to use Bluetooth (BLE )in ios,even bady can use. 简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和 ...

  9. ios蓝牙开发(四)BabyBluetooth蓝牙库介绍

    BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你 ...

随机推荐

  1. 试用 Nexus OSS 3.0 的docker仓库 (一)

    Nexus 3.0 可以创建三种docker仓库: 1. docker (proxy)      代理和缓存远程仓库 ,只能pull 2. docker (hosted)    托管仓库 ,私有仓库, ...

  2. history

    history用来显示最近执行的命令,系统中将当前的允许的最大保存的历史命令条数保存在环境变量HISTSIZE中,缺省选项时表示显示最多HISTSIZE个命令,可以指定显示最近的n条命令 $histo ...

  3. Hadoop环境常用命令

    用户可以通过dfsadmin -safemode value   来操作安全模式,参数value的说明如下: enter - 进入安全模式 leave - 强制NameNode离开安全模式 get - ...

  4. 工作中常用的Linux命令:mkdir命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6076075.html (转载请注明出处) 在Linux系统中,mkdir命令用来创建一个目录或一个级联目录. ...

  5. shell脚本实现随机筛选

    #!/bin/bash name=(val1 val2 val3 val4 ...) a=$() #以时间产生随机数向39取余得到0~38的值

  6. android java数组应用与说明

    如果定义类或结构数据则需每个都进行创建才可以使用,不然都为null 如: PointF pts[] = new PointF[5] ;//pts[0].x =CSSliderSize / 2;//这样 ...

  7. 解析json格式数据

    实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...

  8. POJ 1724 ROADS【最短路/搜索/DP】

    一道写法多样的题,很具有启发性. 具体参考:http://www.cnblogs.com/scau20110726/archive/2013/04/28/3050178.html http://blo ...

  9. POJ 1066 Treasure Hunt【线段相交】

    思路:枚举四边墙的门的中点,与终点连成一条线段,判断与其相交的线段的个数.最小的加一即为答案. 我是傻逼,一个数组越界调了两个小时. #include<stdio.h> #include& ...

  10. UIScrollView 滑动复位

    需求 在每次打开界面滑动列表都是复位状态(未滑动). 分析 在制作滑动列表时常常会结合UIPanel和UIScrollView 要让滑动列表回到未滑动时的位置,那么就需要改变Panel的Clippin ...