更新记录

1.0.4(2024-07-03)

  1. android权限配置文件AndroidManifest.xml迁移到项目根目录

1.0.3(2024-05-12)

  1. 优化Android蓝牙权限

1.0.2(2023-07-28)

修改前缀

查看更多

平台兼容性

uni-app

Vue2 Vue3
?
app-vue app-nvue app-android app-ios
? ? ? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?
微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序 钉钉小程序 快手小程序 飞书小程序 京东小程序
? ? ? ? ? ? ? ? ?
快应用-华为 快应用-联盟
? ?

uni-app x

app-android app-ios
? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?

android蓝牙扫描

集成步骤

  1. 拷贝demo示例里的AndroidManifest.xml到项目根目录
  2. 集成本插件,集成步骤可参考https://www.jianshu.com/p/830ccc503e29或官网

定制或采购源码联系QQ252797991

API接口

引入插件变量:


    import {
        UTSBluetoothAdapter

    } from "@/uni_modules/wrs-uts-bluetooth";
  • 判断蓝牙是否打开

                let isEnabled = bluetoothAdapter.isEnabled()
                if(isEnabled) {

                }
  • 开启蓝牙

bluetoothAdapter.enable()
  • 注册蓝牙扫描回调

                bluetoothAdapter.registerReceiver((resp) => {
                    let action = resp.action;
                    switch (action) {
                        case "android.bluetooth.device.action.FOUND": {
                            // 扫描到蓝牙
                            let device = resp.device;
                            console.log("扫描到蓝牙:" + JSON.stringify(resp))
                            // 用这个条件device.bluetoothClass.majorDeviceClass == 1536筛选过滤蓝牙
                            // if (device.bluetoothClass.majorDeviceClass == 1536) {
                            //  this.bluetoothArray.push(device);
                            // }

                            this.bluetoothArray.push(device);
                        }
                        break;
                        case "android.bluetooth.device.action.BOND_STATE_CHANGED": {
                            // 蓝牙状态变更
                            let device = resp.device;
                            let bondState = device.bondState;
                            switch (bondState) {
                                case 11: {
                                    // 正在配对......
                                }
                                break;
                                case 12: {
                                    // 完成配对
                                }
                                break;
                                case 10: {
                                    // 取消配对
                                }
                                break;
                                default:
                                    break;
                            }
                        }
                        break;
                        case "android.bluetooth.adapter.action.DISCOVERY_FINISHED": {
                            // 蓝牙扫描完成
                        }
                        break;
                        default:
                            break;
                    }
                });
  • 开始扫描蓝牙

bluetoothAdapter.startDiscovery();
  • 停止扫描蓝牙

bluetoothAdapter.cancelDiscovery();
  • 判断蓝牙是否在扫描中

let isDiscovering = bluetoothAdapter.isDiscovering()

隐私、权限声明

1. 本插件需要申请的系统权限列表:

蓝牙、定位

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问