当前位置: 首页 > 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年各省发电量数据
  • 靳燕出任中央戏剧学院党委副书记,原任中戏院长助理
  • 航行警告!黄海南部进行实弹射击,禁止驶入
  • 特朗普说克里米亚将留在俄罗斯,泽连斯基:绝不承认
  • 健康社区“免疫行动”促进计划启动,发布成人预防“保典”
  • 由重商主义观察世界现代化历程
  • 五一假期上海路网哪里易拥堵?怎么错峰更靠谱?研判报告来了