Android开发之蓝牙通信

一:Android中的蓝牙:

蓝牙解释(百度百科):连接地址:点击打开蓝牙百度百科

蓝牙( Bluetooth® ):是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙技术最初由电信巨头爱立信公司于1994年创制,当时是作为RS232数据线的替代方案。蓝牙可连接多个设备,克服了数据同步的难题。

蓝牙是基于数据包、有着主从架构的协议。一个主设备至多可和同一微微网中的七个从设备通讯。

还需注意:

蓝牙技术联盟于2010年6月30日正式推出蓝牙核心规格4.0 (称为Bluetooth Smart)。它包括经典蓝牙、高速蓝牙和蓝牙低功耗协议。高速蓝牙基于Wi-Fi,经典蓝牙则包括旧有蓝牙协议。
蓝牙低功耗,也就是早前的Wibree,是蓝牙4.0版本的一个子集,它有着全新的协议栈,可快速建立简单的链接。作为蓝牙1.0 – 3.0版本中蓝牙标准协议的替代方案,它主要面向对功耗需求极低、用纽扣电池供电的应用。芯片设计可有两种:双模、单模和增强的早期版本。早期的Wibree蓝牙ULP(超低功耗)的名称被废除,取而代之的是后来用于一时的BLE。2011年晚些时候,新的商标推出,即用于主设备的 “Bluetooth Smart Ready”和用于传感器的“Bluetooth Smart”。
  • 单模情况下,只能执行低功耗的协议栈。意法半导体、笙科电子、CSR、北欧半导体和德州仪器已经发布了单模蓝牙低功耗解决方案。
  • 双模情况下,Bluetooth Smart功能整合入既有的经典蓝牙控制器。截至2011年3月,高通创锐讯、CSR、博通和德州仪器已宣布发表符合此标准的芯片。适用的架构共享所有经典蓝牙既有的射频和功能,相比经典蓝牙的价格上浮也几乎可以忽略不计

二:Android中相关的蓝牙API的基础知识:

射频通信(RFCOMM)常用于建立虚拟的串行数据流。RFCOMM提供了基于蓝牙带宽层的二进制数据转换和模拟EIA-232(即早前的的RS-232)串行控制信号,也就是说,它是串口仿真。
RFCOMM向用户提供了简单而且可靠的串行数据流。类似TCP。它可作为AT指令的载体直接用于许多电话相关的协议,以及通过蓝牙作为OBEX的传输层。
许多蓝牙应用都使用RFCOMM由于串行数据的广泛应用和大多数操作系统都提供了可用的API。所以使用串行接口通讯的程序可以很快的移植到RFCOMM上面。


从上面的图片我们就可以看出,蓝牙的api是在android包下面的bluetooth;

上面的是Api的版本比较老,不怎么全,我们会一一说明:

  (1)BluetoothAdapter: 代表的是本地的蓝牙适配器,我们可以通过

BluetoothAdapter.getDefaultAdapter();


来获取一个BluetoothAdapter,要是这个对象返回的是null,说明设备不支持蓝牙模块.返回不是null,设备支持蓝牙模块.

mAdapter.isEnabled();
这是来获取蓝牙的是否是打开状态:

if (mAdapter != null && !mAdapter.isEnabled()) {
    Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
    activity.s
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值