uni.openBluetoothAdapter失败常见原因:模拟器不支持;iOS需配置manifest权限及NSBluetoothAlwaysUsageDescription;Android 12+需动态申请bluetoothScan/connect权限并处理定位权限;必须等待openAdapter成功后再调startDiscovery,且onBluetoothDeviceFound须提前注册; deviceId须严格使用回调返回值,格式校验防大小写错误;连接后需监听onBLEConnectionStateChange确认稳定再查服务与特征值。uni-app App端调用uni.openBluetoothAdapter失败的常见原因App端蓝牙功能在真机上才能运行,模拟器里调用uni.openBluetoothAdapter必失败,且不会报错,只会静默卡住或回调不触发。iOS 和 Android 行为还不一样:iOS 需提前在 manifest.json 里勾选「蓝牙」权限并填写 NSBluetoothAlwaysUsageDescription;Android 则必须动态申请 android.permission.BLUETOOTH_SCAN(Android 12+)和 android.permission.BLUETOOTH_CONNECT(Android 12+),老版本还需 android.permission.ACCESS_FINE_LOCATION------因为系统把蓝牙扫描归类为位置行为。实操建议:检查 manifest.json → app-plus → permissions 是否已完整配置蓝牙相关权限项Android 12+ 必须调用 uni.authorize({scope: 'scope.bluetoothScan'}) 和 uni.authorize({scope: 'scope.bluetoothConnect'}),不能只授权一次iOS 真机首次运行时,uni.openBluetoothAdapter 成功后才会弹出系统权限框,不是之前弹调用前先 uni.getSystemInfoSync().platform === 'ios' 分支处理,避免安卓逻辑误走 iOS 路径搜索设备时uni.startBluetoothDevicesDiscovery没返回结果最常被忽略的是:没等 uni.openBluetoothAdapter 完全 success 就直接 start discovery,或者 discovery 启动后没监听 uni.onBluetoothDeviceFound ------ 这个监听必须在 start 前注册,且仅对本次 discovery 有效,重启就得重绑。实操建议:确保 uni.openBluetoothAdapter 的 success 回调里再调 uni.startBluetoothDevicesDiscoveryuni.onBluetoothDeviceFound 必须在 start 前注册,且不要用箭头函数(this 绑定问题会导致监听失效)Android 下若仍无设备,尝试传参 {services: \[\], allowDuplicatesKey: true},某些设备广播时不带 service UUID,空 services 才能扫到iOS 对非标准广播包过滤更严,如果设备是自定义 BLE 协议,务必确认它广播了 0x1800(Generic Access)等基础 service连接设备后uni.createBLEConnection报错errCode: 10005errCode: 10005 是「连接超时」,不是设备不存在。根本原因是:调用 uni.createBLEConnection 时传入的 deviceId 不是 uni.onBluetoothDeviceFound 返回的那个,而是从列表里随便取的、或缓存旧值、或大小写混用(iOS 设备 ID 全大写,Android 可能小写)。 Shakespeare 一款人工智能文案软件,能够创建几乎任何类型的文案。
相关推荐
智写-AI3 分钟前
真实有效的免费降英文AI工具服务商yuhuofei202130 分钟前
【Python入门】了解掌握Python中函数的基本使用IvorySQL1 小时前
PG 日报|社区讨论重构 pg_hba 配置文件格式逝水无殇1 小时前
C# 文件的输入与输出详解白帽小阳2 小时前
2026前端面试题!(附答案及解析)乱写代码2 小时前
Python开发技巧--类型注解Literal卷无止境2 小时前
Python FFI 技术深度解析:ctypes、cffi 与 pybind11 的性能差异与实践挑战罗政3 小时前
PDF 批量合并工具:本地 AI 自动排序、识别正文日期与合同编号郝学胜-神的一滴3 小时前
算法实战:最小k个数——大顶堆的优雅解法