更新记录

1.1.21(2025-05-10)

优化

1.1.20(2025-05-10)

优化iOS端

1.1.19(2025-05-07)

优化

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.98,Android:4.4,iOS:支持,HarmonyNext:不确定 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

android-ble

android ios ble 蓝牙程序

本插件是uts 插件

uniapp demo 在例子项目下的 zip 文件

插件测试使用方法

  1. 选择试用,绑定要试用的项目appid,

  2. 选择后下载到对应的本地项目,

  3. 按照文档 -》把插件引入项目(即 import { KeepLive } from '@/uni_modules/android-keeplive' 需要先引入),

  4. 发布-》云打包-》选择制作基座-》打包等基座制作完成

  5. 运行 -》 运行到手机或模拟器-》运行到Androidapp基座-》选择使用自定义基座运行-》选择手机-》运行

uniappx

import {BleLib,MyApiResult,BleScanResult,BleServices} from "@/uni_modules/android-ble"  

var lib=new BleLib()

uniapp

import {BleLib} from "@/uni_modules/android-ble"

var lib=new BleLib()

蓝牙扫描

uniappx

lib.startScanBleDevice(15000,function(res:MyApiResult){
    if(res.type==0){
        var scan=res.data as BleScanResult;
    }else{

    }
})

uniapp

lib.startScanBleDevice(15000,function(res){
    if(res.type==0){
        var scan=res.data;
    }else

    }
})

蓝牙是否连接

var isconnect=lib.isConnected();

获取已连接设备id

var device=lib.getConnectMac();// 已经连接返回mac 地址 未连接返回“”

连接蓝牙

connect

参数1 需要连接的mac 地址

参数2 是否开启蓝牙自动连接 true 自动连接 false 取消自动连接

参数3 连接回掉 type 0 成功 10000 蓝牙连接失败 10001 蓝牙异常断开

uniappx

lib.connect(device.device.address,false,function(res:MyApiResult){
    console.log(res)
    // type==0 表示连接成功 type==1 
    if(res.type==0){

    }else{

    }
})

uniapp

lib.connect(device.device.address,false,function(res){
    console.log(res)
    // type==0 表示连接成功 type==1 
    if(res.type==0){

    }else{

    }
})

自动连接蓝牙(需要先调用connect 方法)

lib.startAutoConnectBt(6000);

取消自动连接蓝牙

lib.cancelAutoConnectBt();

扫描蓝牙服务与特征值

scanServices

连接蓝牙后需要获扫描蓝牙与特征值

uniappx

lib.scanServices(function(resSevice:MyApiResult){

});

uniapp

lib.scanServices(function(resSevice){

});

断开蓝牙

lib.close();

开启服务消息通知

onNotityReadBleData

参数1 通知服务uuid

参数2 通知属性 uuid

参数3 true 开启通知读取 false 关闭通知读取

参数4 回掉结果

uniappx

lib.onNotityReadBleData(lib.getSericUUID(),
    lib.getNotityUUID(),
    true,
    function(res:MyApiResult){
        console.log(res)
    }   
)

uniapp

lib.onNotityReadBleData(lib.getSericUUID(),
    lib.getNotityUUID(),
    true,
    function(res){
        console.log(res)
    }   
)

获取自动识别读写服务uuid

lib.getSericUUID()

获取自动识通知uuid

lib.getNotityUUID()

获取自动识写入uuid

lib.getwriteUUID()

发送数据

writeDataToBle

参数1 服务uuid

参数2 写入属性uuid

参数3 16进制数组

参数4 写入回掉

uniappx

var b:number[]=[0x55,0xff,oxAA] as number[];
lib.writeDataToBle(
    lib.getSericUUID(),
    lib.getwriteUUID(),
    b,
    function(res:MyApiResult){
        console.log(res)
    }   
)   

uniapp

var b=[0x55,0xff,oxAA] ;
lib.writeDataToBle(
    lib.getSericUUID(),
    lib.getwriteUUID(),
    b,
    function(res){
        console.log(res)
    }   
)   

发送16进制字符数据

writeStringDataToBle

参数1 服务uuid

参数2 写入属性uuid

参数3 16进制字符串

参数4 回掉写入结果

uniappx

var d="00FFAABB"
lib.writeStringDataToBle(
    lib.getSericUUID(),
    lib.getwriteUUID(),
    d,
    function(res:MyApiResult){
        console.log(res)
    }
)

uniapp

var d="00FFAABB"
lib.writeStringDataToBle(
    lib.getSericUUID(),
    lib.getwriteUUID(),
    d,
    function(res){
        console.log(res)
    }
)

设置mtu(仅安卓)

setMtu

uniappx

lib.setMtu(512,function(res:MyApiResult){

})

uniapp

lib.setMtu(512,function(res){

})

打赏

感谢您使用此插件,如果你觉得本插件,解决了你的问题,赠人玫瑰,手留余香。

隐私、权限声明

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

<uses-permission android:name="android.permission.BLUETOOTH_SCAN" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> <uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/> <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />

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

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

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