2023-03-25 Android app 通过蓝牙(BLE低功耗蓝牙)实现设备间通讯的一个可用实例

article/2023/6/4 14:38:47

一、两台android 手机之间的ble 蓝牙通信,不要蓝牙匹配,也是可以互传数据。

二、主要代码参考下面的文章:

1、主要参考

Android通过蓝牙(BLE低功耗蓝牙)实现设备间通讯 | 客户端 | 服务端_蓝牙beaon server_Code-Porter的博客-CSDN博客

https://download.csdn.net/download/a_zhon/11441215

2、碰到一个比较棘手的问题,同一个APP , 运行在不同的手机设备上,onCharacteristicChanged在部分设备上没有回调.我这里是两台手机是可以,但是android 和linux buildroot 之间的ble蓝牙通信就接收不到服务端发过来的数据。解决方法如下。

     加入下面的代码就能解决。

     for(BluetoothGattDescriptor dp:characteristic.getDescriptors()){dp.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE);mBluetoothGatt.writeDescriptor(dp);}

三、其他参考文章:

android蓝牙的配对与取消配对 - 简书

Android-Ble蓝牙开发Demo示例–扫描,连接,发送和接收数据,分包解包(附源码) - 简书

Android实现蓝牙客户端与服务器端通信示例_Android_脚本之家

Android 蓝牙连接与通讯,BLE蓝牙和经典蓝牙一起的蓝牙连接与通讯案例_进击的Ace的博客-CSDN博客

Android使用低功耗蓝牙BLE进行简单通信_android ble蓝牙通信_yiwenbin94的博客-CSDN博客

【Android】蓝牙开发——BLE(低功耗蓝牙)(附完整Demo)_android蓝牙开发_摸爬滚打的程序媛的博客-CSDN博客

Android ble(低功耗蓝牙)开发基础代码及常见问题_蓝牙代码_android底中底边的博客-CSDN博客
Android-Ble蓝牙通讯开发–扫描,连接,发送和接收数据,分包解包(附源码)_android ble_Crazy程序猿2020的博客-CSDN博客

http://www.ngui.cc/article/show-1007545.html

相关文章

TiDB K8S

1、 命名空间 k create ns ti k create namespace tidb-admin k create namespace tidb-clusteralias kkubectl alias tik -n tidb alias tiak -n tidb-admin alias tick -n tidb-cluster2、 Helm安装 tidb-operator helm repo add pingcap https://charts.pingcap.org/ helm…

论文解读:PP-LiteSeg: A Superior Real-Time Semantic Segmentation Model

发表时间:2022 论文地址:https://arxiv.org/abs/2204.02681 项目地址:https://github.com/PaddlePaddle/PaddleSeg PP-LiteSeg,一个新的轻量级实时语义分割任务模型,在分割精度和推理速度之间实现了一种最先进的权衡…

考研复试——概率论(2)

文章目录概率论1. 什么是概率?请给出定义并解释它。2. 什么是条件概率?请举一个例子并解释。3. 什么是贝叶斯定理?请举一个例子并解释。4. 什么是期望值和方差?请解释这些概念及其在统计学和概率论中的应用。5. 什么是随机变量&am…

Netty进阶《ChannelPoolMap源码分析》

ChannelPoolMap是用来存储ChannelPool和指定key的一个集合Map,实际的应用场景就是服务器端是一个分布式集群服务,拥有多个配置地址,这样我们就可以配置多个服务地址,减轻单台服务器的压力;Netty框架提供了ChannelPoolM…

从零开始学习目标检测:YOLO算法详解

从零开始学习目标检测:YOLO算法详解 文章目录从零开始学习目标检测:YOLO算法详解1. 🌟什么是目标检测?2.🌟传统的目标检测与基于深度学习的目标检测3.🌟目标检测算法的工作流程4.🌟目标检测可以干什么&…

【华为OD机试 2023最新 】 最优资源分配(C++)

文章目录 题目描述输入描述输出描述备注用例题目解析C++题目描述 某块业务芯片最小容量单位为1.25G,总容量为M*1.25G,对该芯片资源编号为1,2,…,M。该芯片支持3种不同的配置,分别为A、B、C。 配置A:占用容量为 1.25 * 1 = 1.25G配置B:占用容量为 1.25 * 2 = 2.5G配置C…

车机娱乐系统

BYD哪吒理想蔚来小鹏埃安吉利(魅族)大众 MQB大众MEB奥迪娱乐主机内置TboxYes生产商惠州比亚迪电子有限公司惠州市德赛西威汽车电子股份有限公司惠州市德赛西威汽车电子股份有限公司伟创力电脑(苏州)有限公司比亚迪汽车工业有限公司铁将军汽车电子股份有限…

数据结构与算法二 算法分析

一 算法分析 前面我们已经介绍了,研究算法的最终目的就是如何花更少的时间,如何占用更少的内存去完成相同的需求,并且也通过案例演示了不同算法之间时间耗费和空间耗费上的差异,但我们并不能将时间占用和空间占用量化&#xff0c…

【kuangbin计划】简单DP(1-3题 java/c++双语言详细解析)

本意是同时提供java以及c两种语言的代码的题解 但是无奈oj网站一直欺负java语言慢, 因此本篇题解部分java代码只提供思路参考 不提供语言优化,有兴趣的同学可以自行优化java版本 过不了的java语言均已注明! 目录 4546. 最大和加强加强版 - 线…

双重检查锁定与延迟优化

双重检查锁定与延迟优化1. 双重所检查的由来2. 问题根源3. 基于volatile的解决方案4. 基于类初始化的解决方案在Java多线程程序中,有时需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。本…