设备蓝牙连接成功, 获取不到设备蓝牙服务列表?

这种情况一般会接收到uniapp的错误码(10004), 我们可以前往uniapp官网API模块查看错误码信息,查看后可以得知错误码10004是没有找到指定服务.
我们可以详细看下获取所有服务的api -----uni.getBLEDeviceServices(OBJECT)

示例代码:

uni.getBLEDeviceServices({// 这里的 deviceId 需要已经通过 createBLEConnection 与对应设备建立链接deviceId,success(res) {console.log('device services:', res.services)}
})

这句话很重要(需要确认一下是否已经建立连接):

这里的 deviceId 需要已经通过 createBLEConnection 与对应设备建立链接

下面说出现10004错误码的原因:

  1. 连接的蓝牙设备是否正确, deviceId 是否正确
  2. 使用uni.getBLEDeviceServices(OBJECT)方法的时候,需要加上一个延时器,根据情况自己设定延时时间, 我这边设置的2000毫秒,差不多就是100%能够获取到了.

正确代码样例:

重要的事情说三遍:

记得加延时器!!! 记得加延时器!!! 记得加延时器!!!

//获取蓝牙设备所有服务(service)getBLEDeviceServices() {let _serviceList = [];let deviceId = uni.getStorageSync("deviceId");let self = this;return new Promise((resolve, reject) => {setTimeout(() => {uni.getBLEDeviceServices({deviceId: deviceId,success: res => {console.log('################################# deviceId:'+ deviceId +' #########################################')console.log('########################### 获取到蓝牙设备所有服务: '+ JSON.stringify(res)+' ####################')for (let service of res.services) {if (service.isPrimary) {_serviceList.push(service);}}uni.hideLoading();// console.log("_serviceList: " + JSON.stringify(_serviceList));resolve(_serviceList)},fail: err => {uni.hideLoading();self.showToast(`获取设备Services` + JSON.stringify(err));console.log('################################# deviceId:'+ deviceId +' #########################################')console.log('####################################### 获取蓝牙设备服务失败: '+ JSON.stringify(err) +' ###################################')reject(err);},})}, 2000);});}

uniapp连接蓝牙相关问题相关推荐

  1. DCloud UniAPP Android 蓝牙连接ESCPOS打印机

    1.蓝牙打印引用文件 btprinter.js import context from "@/common/context.js" //上下文处理 用来保存绑定的蓝牙设备地址fun ...

  2. uni-app H5+ 连接蓝牙打印机打印文字及二维码

    基于Native.js 实现的连接蓝牙打印机 打印效果图 核心代码 测试代码 运行设备及环境 PS: PPS: Demo 打印效果图 核心代码 /*** @Description: 蓝牙打印类 基于h ...

  3. 3,uniapp功能之—蓝牙秤,连接蓝牙秤获取重量实时显示在页面上(坤宏的蓝牙秤)

    1,在component里面新建一个blueTooth.vue组件 <template><view><view v-for="(item,index) in d ...

  4. uniapp连接低功耗蓝牙

    <template><view class="dialogWrapp" v-if="showFlag"><view class=& ...

  5. 【uni-app学习】uni-app低功耗蓝牙采坑记录

    一.低功耗蓝牙的基础知识 1.低功耗蓝牙简介 蓝牙4.0及更高版本被称为蓝牙低功耗,其中蓝牙4.0标准包括传统的蓝牙模块部分和蓝牙低功耗模块部分,这是双模式标准.一般上位机都会有相应的蓝牙API可用, ...

  6. 记录--uni-app实现蓝牙打印小票

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 说明 基于uni-app开发,调用官方蓝牙相关api实现连接蓝牙与向蓝牙热敏打印机发送字节流,可打印文字,二维码,图片,调整字体大小等,本 ...

  7. uni-app实现蓝牙打印小票

    说明 基于uni-app开发,调用官方蓝牙相关api实现连接蓝牙与向蓝牙热敏打印机发送字节流,可打印文字,二维码,图片,调整字体大小等 结构 bluetooth.js 蓝牙连接相关模块封装 comma ...

  8. Android 蓝牙相关的广播

    2019独角兽企业重金招聘Python工程师标准>>> Android 蓝牙相关的广播 监听蓝牙相关的广播并获得相关的信息,蓝牙相关的广播主要集中在BluetoothAdapter和 ...

  9. Android连接蓝牙打印机

    前言 在之前写过一篇Android操作蓝牙打印机(上),当时也是因为自己在工作中确实走了许多弯路,所以当时计划着用两篇文章详细阐述蓝牙打印的整个流程,也是对工作的一种总结,其次也可以给蓝牙打印方面感觉 ...

最新文章

  1. ssm整合 durid数据源 报错java.sql.SQLException: Access denied for user ‘xxx‘@‘localhost‘
  2. Javascript动态执行问题浅析
  3. 计算机组装错题整理,数学排列组合部分错题精选.docx
  4. JavaScript学习总结(8)——JS实用技巧总结
  5. springBoot整合Dubbo使用与采坑
  6. Vijos 1041题:神风堂人数
  7. python之os模块详解
  8. 【RocketMQ】Send [1] times, still failed以及No route info of this topic问题排查思路总结
  9. python hist2d_matplotlib可视化之hist直方图
  10. 蓝凌OA系统任意文件读取
  11. 企业对接Walmart平台常见报错
  12. 实时监测麦克风音量及检测MIC
  13. JS - 阿里云 OSS 文件下载通用办法(支持跨域)
  14. OI 生涯回忆录 《Pilgrimage》
  15. Struct复杂数据类型的UDF编写、GenericUDF编写
  16. C语言讲义2018修订版(黑马程序员)
  17. 科比球衣退役仪式和演讲6分钟全回顾(中文字幕)
  18. 动态规划——状态压缩dp
  19. Eclipse的安装以及环境配置
  20. IBM AIX 入门培训

热门文章

  1. win10千万不要重置_ Win10重置此电脑功能详细使用教程
  2. 基于立体视觉的三维模型重建系统设计
  3. java 设计模式之: 建造模式(Builder)
  4. UWP学习(一)--Talking about 5 Controls
  5. 【效率办公】推荐一款非常好用的电脑桌面便签
  6. 理解JavaScript Call()函数原理。
  7. 短信通知-阿里大鱼 申请AK 发送Until
  8. 如何直观理解AUC评价指标?
  9. 微信小程序——推荐简洁和高可用性的插件WxP UI
  10. win10隐藏任务栏_win10系统任务栏彰显个性的设置方法