当前位置: 首页 > news >正文

Uniapp调用native.js使用经典蓝牙串口通讯方法及问题解决

本人尝试在uniapp环境下开发一款安卓应用,需要与使用经典蓝牙协议的设备进行串口通讯,而uniapp官方给出的蓝牙操作接口目前只支持BLE(低功耗蓝牙),用该接口无法正常获取到我想要连接的设备。

通过大量搜索,终于在gitee平台找到了想要的实现(核心是BluetoothTool.jshttps://gitee.com/booltrue/bluetooth-printer/blob/master/static/libs/BluetoothTool.js文件),参见:BluetoothPrinter: 使用uniapp开发 的蓝牙打印demo,可打印图片,二维码,文字,线条等 仅支持:小程序、android。暂时不支持ioshttps://gitee.com/booltrue/bluetooth-printer

经过不断测试,基本实现了想要的功能,通过真机测试能够正常使用,在打包为apk后,发现无法搜索到蓝牙设备,经过若干天的搜索,终于在上述开源代码的讨论中找到了解决方法,参见:

主要问题解决代码如下:

// native.js广播搜索前需调用uni.startBluetoothDevicesDiscovery();
// 否则真机运行没问题但打包后可能会搜不到蓝牙
uni.startBluetoothDevicesDiscovery({success(res) {console.log(res);bluetoothTool.discoveryNewDevice();}
})

特此记录一下,希望后来者能够闭坑!!!

相关文章:

  • Web 前端包管理工具深度解析:npm、yarn、pnpm 全面对比与实战建议
  • 第五章 SQLite数据库:4、SQLite 进阶用法:常见的约束、PRAGMA 配置、数据操作
  • 微信小程序怎么分包步骤(包括怎么主包跳转到分包)
  • UE5 渲染视频
  • RAG 实战|用 StarRocks + DeepSeek 构建智能问答与企业知识库
  • 力扣刷题-热题100题-第35题(c++、python)
  • 捕鱼船检测数据集VOC+YOLO格式2105张1类别
  • 【工具-Krillin AI】视频翻译、配音、语音克隆于一体的一站式视频多语言转换工具~
  • BFS DFS ----习题
  • C语言教程(十):C 语言函数详解
  • 数据结构之队列及其应用
  • Openfein实现远程调用的方法(实操)
  • 聊一聊接口测试是如何进行的?
  • Vue3如何选择传参方式
  • 虚幻基础:ue引擎的碰撞
  • HTTP/1.1 队头堵塞问题
  • 函数对象-C++
  • Linux 系统的启动流程
  • 树莓派超全系列教程文档--(30)autoboot.txt介绍
  • 2000-2017年各省发电量数据
  • 当老年人加入“行为艺术基础班”
  • 青海省林业和草原局副局长旦增主动投案,正接受审查调查
  • 病人有头发,照护者不发疯:《黑镜》中的身体缺席与虚伪关怀
  • 上海乐高乐园建设进入最后冲刺,开园限量纪念年卡将于5月开售
  • 国家卫健委:工作相关肌肉骨骼疾病、精神和行为障碍成职业健康新挑战
  • 王文涛会见德国汽车工业协会主席穆勒