Qt安卓蓝牙

简介: 笔记

一. 在pro中添加bluetooth


QT       += bluetooth


二.添加对应的头文件


#include <QtBluetooth/qbluetoothglobal.h>
#include <QtBluetooth/qbluetoothlocaldevice.h>  //获取设备的蓝牙状态信息
#include <QtBluetooth/qbluetoothsocket.h>  //进行链接蓝牙设备,读写信息
#include <QtBluetooth/qbluetoothservicediscoveryagent.h>  //扫描周围蓝牙设备


三. 编写代码


1.一些初始化的工作


discoveryAgent = new QBluetoothDeviceDiscoveryAgent();  
    localDevice = new QBluetoothLocalDevice();
    socket  =new QBluetoothSocket(QBluetoothServiceInfo::RfcommProtocol); //设置通讯信息
  connect(discoveryAgent,&QBluetoothDeviceDiscoveryAgent::deviceDiscovered,this,&BlueConnect::bltDevDiscover); //发现蓝牙设备后,将调用bltDevDiscover,参数为QBluetoothDeviceInfo,包括了目标设备的地址和名字以及一些其他的信息
    discoveryAgent->setInquiryType(QBluetoothDeviceDiscoveryAgent::GeneralUnlimitedInquiry);//设置蓝牙扫描周围蓝牙的方式
    discoveryAgent->start();        //开始扫描,并不会一直扫描,扫描一段时间后,将会停在扫描,发送扫描完成信号finish


2.链接

通过上面的QBluetoothDeviceInfo,可以得到设备的地址,通过设备的地址,建立连接,连接成功后socket会发出connected信号完成连接。
static const QLatin1String serviceUuid("00001101-0000-1000-8000-00805F9B34FB");
QBluetoothAddress Address(Items.at(0)->text().left(index));
socket->connectToService(Address,QBluetoothUuid(serviceUuid),QIODevice::ReadWrite); //建立连接


3.读写数据

读写数据调用下面两个函数就可以了

然后当读数据缓冲区中有数据时,socket会发送readyRead信号。

socket->read();
 socket->write();


至此安装手机连接蓝牙的基础代码已经完成,然后再根据需求扩展自己的代码即可。蓝牙模块是(HC05),下面给出我的几个截图 完整代码下载链接及安装包

30.jpg

4.jpg5.jpg

公众号:FPGA之旅


目录
相关文章
|
8月前
|
JavaScript Java Android开发
uniapp通过蓝牙传输数据 (安卓)
uniapp通过蓝牙传输数据 (安卓)
360 1
|
8月前
|
XML 物联网 API
Android Ble蓝牙App(五)数据操作
Android Ble蓝牙App(五)数据操作
793 0
|
Linux API Windows
linux系统中利用QT实现蓝牙功能的方法
linux系统中利用QT实现蓝牙功能的方法
616 0
|
8月前
|
Android开发
【Android App】蓝牙的设备配对、音频传输、点对点通信的讲解及实战(附源码和演示 超详细)
【Android App】蓝牙的设备配对、音频传输、点对点通信的讲解及实战(附源码和演示 超详细)
1577 0
|
5月前
|
Android开发
Android 配置蓝牙遥控器键值
本文详细介绍了Android系统中配置蓝牙遥控器键值的步骤,包括查看设备号、配置键位映射文件(kl文件)、部署kl文件以及调试过程,确保蓝牙遥控器的按键能正确映射到Android系统对应的按键功能。
336 1
|
8月前
|
Android开发
Android获取蓝牙设备列表的方法
Android获取蓝牙设备列表的方法
576 5
|
8月前
|
定位技术 Android开发
Android 12蓝牙报java.lang.SecurityException: Need android.permission.BLUETOOTH_CONNECT permission
Android 12蓝牙报java.lang.SecurityException: Need android.permission.BLUETOOTH_CONNECT permission
271 1
|
8月前
|
Android开发
Android监听蓝牙广播
Android监听蓝牙广播
68 1
|
8月前
|
XML 物联网 API
Android Ble蓝牙App(二)连接与发现服务
Android Ble蓝牙App(二)连接与发现服务
255 1
|
8月前
|
开发工具 Android开发
QGroundControl Qt安卓环境搭建及编译出现的问题
QGroundControl Qt安卓环境搭建及编译出现的问题
336 0