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后,发现无法搜索到蓝牙设备,经过若干天的搜索,终于在上述开源代码的讨论中找到了解决方法,参见:nullhttps://gitee.com/booltrue/bluetooth-printer/issues/I5OX92

主要问题解决代码如下:

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

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

相关推荐
Angindem8 小时前
从零搭建uniapp项目
前端·vue.js·uni-app
Bug从此不上门13 小时前
【无标题】
前端·javascript·uni-app·vue
耶啵奶膘16 小时前
uniapp+vue2解构赋值和直接赋值的优缺点
uni-app
疯狂的沙粒17 小时前
uni-app 项目支持 vue 3.0 详解及版本升级方案?
前端·vue.js·uni-app
Jiaberrr17 小时前
uniapp Vue2 获取电量的独家方法:绕过官方插件限制
前端·javascript·uni-app·plus·电量
^Rocky18 小时前
uniapp 对接腾讯云IM群公告功能
uni-app·腾讯云
段旭涛18 小时前
uniapp 设置手机不息屏
前端·uni-app
疯狂的沙粒21 小时前
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
前端·uni-app·html
狼性书生1 天前
uniapp实现的简约美观的星级评分组件
前端·uni-app·vue·组件
Jiaberrr2 天前
uniapp 安卓 APP 后台持续运行(保活)的尝试办法
android·前端·javascript·uni-app·app·保活