如何使用android原生BLE蓝牙进行 *** 作?

如何使用android原生BLE蓝牙进行 *** 作?,第1张

之前的涉及的物联网项目中使用的: BLE 低功耗蓝牙(蓝牙40), 支持android 43以上的手机
主从关系: BLE低功耗蓝牙只能做从端设备 ,一个蓝牙主端设备,可同时与7个蓝牙从端设备进行通讯

1)低功耗
低功耗的原理:
1\低功耗蓝牙仅使用了3个广播通道,传统蓝牙技术采用 16~32 个频道
2\每次广播开启时间也由传统的 225ms 减少到 06~12ms(毫秒)

2)传输距离极大提高
传统蓝牙传输距离为 2~10m,而蓝牙40的有效传输距离可达到 60~100m

3)安全性
使用AES-128 CCM加密算法进行数据包加密和认证。
更多BLE蓝牙的解析参考博客 : BLE40教程一 蓝牙协议连接过程与广播分析

添加权限
打开蓝牙
1先拿到BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(ContextBLUETOOTH_SERVICE);
2再拿到BluetoothAdapter bluetoothAdapter = bluetoothManagergetAdapter();
判断是否打开蓝牙
未打开d出 系统d框 ,除了 魅族手机 是打开系统设置

设备/手机都是蓝牙信号

在回调方法中:

一般在扫描的过程中,我们还会设置 设备过滤原则 (因为我只想要搜索到我们想要的设备,忽略无关设备)
如:从 scanRecord -- beacon -- beacontype == 0xFF代表Manufacture,通过与嵌入式软件定义 自己的 Manufacture值即可

用BluetoothDevice得到BluetoothGatt:

断连:

关键问题:连接后一般要做什么事

( 必须在刚连接成功后2秒内app写一个值给设备,否则会被设备断开连接)

主要是读写 characteristic
gattwirteCharacteristic(mCurrentcharacteristic);

gattreadCharacteristic(characteristic);

bluetoothGattsetCharacteristicNotification(data, true);

真实工作中使用的蓝牙库BlueToothKit请参考我的另一篇博客:
android蓝牙入门知识和优秀蓝牙第三方库BluetoothKit的使用

物联网应用主要有两种连接方式
一、蓝牙(BLE40)连接方式。优势:连接速度快。劣势:由于蓝牙协议过多,部分手机无法连接。
二、wifi连接模式。是在蓝牙基础上研发的。只要是智能手机都能连接,物联网设备也可以连接,你的物联网设备也可以发射WIFI信号出来。
我推荐wifi适用性更加广阔

前两者的关系是这样的:蓝牙40是第四代蓝牙标准。Navior是一个很牛的企业,最先成熟运用了蓝牙40。。。物联网是指一个系统将各个物品通过蓝牙,wifi,zigbee等通讯手段相互连接,控制感应,与前两者没有直接关系。

不符合协议。
XMODEM协议,是最早出现的2台计算机间通过RS232异步串口进行文件传输的通信协议标准,相对于YMODEM,ZMODEM等其他文件传送协议来说,XMODEM协议实现简单,适合于那些存储器有限的场合。

您好!
物联网用到了通信技术是WiFi,蓝牙,zigbee,
wimax技术,
其中以WiFi发展最快,因为WiFi可以远距离以及穿墙。不是什么3G,蜂窝。一般智能家居都是采用WiFi技术
蓝牙,zigbee是短距离无线通信技术。用于手机,PAD等。
wimax发展速度不快。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/dianzi/13069076.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-29
下一篇2025-08-29

发表评论

登录后才能评论

评论列表(0条)

    保存