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

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();}
})

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

http://www.xdnf.cn/news/111.html

相关文章:

  • 线上蓝桥杯比赛环境配置
  • MySQL事务详解
  • 【Python语言基础】22、异常处理
  • 【web服务_负载均衡Nginx】二、Nginx 核心技术之负载均衡与反向代理
  • Winform发展历程
  • 【电力安全小知识】什么情况下需要铺设绝缘胶垫
  • AIGC产品如何平衡用户体验与内容安全?
  • HDFS入门】HDFS安全与权限管理解析:从认证到加密的完整指南
  • OpenHarmony-Risc-V上运行openBLAS中的benchmark
  • 部署路线Ubuntu_MySQL_Django_绑定域名
  • 【Python3】Django 学习之路
  • 51单片机实验四:键盘检测原理及应用实现
  • 【科研绘图系列】R语言绘制多个气泡图组合图(bubble plot)
  • MATLAB脚本实现了一个转子系统的参数扫描和分岔分析
  • 华为仓颉智能体开发框架 Cangjie Magic深度解析
  • 城市街拍暗色电影胶片风格Lr调色教程,手机滤镜PS+Lightroom预设下载!
  • 【java 13天进阶Day05】数据结构,List,Set ,TreeSet集合,Collections工具类
  • 【C++深入系列】:模版详解(上)
  • 几个常用的快速处理服务器命令和故障排查
  • 使用VHD虚拟磁盘安装双系统,避免磁盘分区
  • 《Operating System Concepts》阅读笔记:p735-p737
  • SQL:聚合函数(Aggregate Functions)
  • 10-openwrt-one调整rootfs_data卷,新增fit2、log、plugins等卷
  • 【MySQL】MySQL表的增删改查(CRUD) —— 上篇
  • MCP 协议:AI 世界的 “USB-C 接口”,开启智能交互新时代
  • PyTorch 深度学习实战(37):分布式训练(DP/DDP/Deepspeed)实战
  • UE5编辑器静止状态下(非 Play 模式)睫毛和眼睛的渲染是正常的,而在 Play 模式下出现模糊
  • Thin-Agent服务(TAS)概述
  • 机器学习在催化剂设计中的应用理论加实操
  • 扫雷-C语言版