更新记录
1.0.6(2024-11-19) 下载此版本
修复上次问题
1.0.5(2024-11-19) 下载此版本
修复uniapp 问题
1.0.4(2024-10-08) 下载此版本
修复偶现链接失败的bug
查看更多平台兼容性
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-serialport
uni-app x项目(uvue)中调用示例:(调试需要自定义基座)
import {BleLib,MyApiResult,BleScanResult,BleServices} from "@/uni_modules/android-ble"
var ble:BleLib=new BleLib();
//ble.startScanBleDevice(15000,function(res:MyApiResult){
// if(res.type==0){
//
// }else{
//
// }
//});
//ble.connect("00:00:00:00:00",true,function(res:MyApiResult){
//});
开发文档
系统对象
export type ScanRecord ={
deviceName: string|null,
txPowerLevel:number|null,
bytes: string|null,
serviceData: string|null,
serviceUuids: string|null,
advertiseFlags:number|null,
manufacturerSpecificData: string|null,
serviceSolicitationUuids:string|null
}
export type Device={
name: string|null,
alias:string|null,
bondState: number|null,
type: number|null,
address:string
}
export type BleScanResult={
rssi: number|null,
isLegacy: boolean|null,
advertisingSid: number|null,
dataStatus: number|null,
isConnectable: boolean|null,
periodicAdvertisingInterval: number|null,
primaryPhy: number|null,
secondaryPhy: number|null,
timestampNanos:number|null,
scanRecord:ScanRecord ,
device:Device
}
export type MyApiResult = {
type : number, // 0 成功 其它为失败
message : string,
data : any
}
export type BleServices={
type:number,
uuid: String,
characteristics:Characteristics[]
}
export type Characteristics={
properties:CharacteristicsProperties,
uuid: String,
propertiesType: number
}
export type CharacteristicsProperties={
READ: boolean,
WRITE:boolean,
NOTIFY:boolean,
INDICATE:boolean
}
打开蓝牙系统设置
openBluetoothSettings
系统蓝牙开关(android 33 有效)
openBluetooth
参数1 true 打开 false 关闭
isEnabled
return 返回蓝牙是否开启
扫描蓝牙
startScanBleDevice
参数1 扫描超时时间 毫秒
参数2 回调函数 扫描结果 回调对象为 MyApiResult data 为BleScanResult type 0 成功 1000 无定位权限
停止扫描蓝牙
stopScanBle
蓝牙连接
connect
参数1 蓝牙地址
参数2 是否自动连接
参数3 蓝牙连接回调函数 回调蓝牙连接成功失败,并且回调蓝牙异常断开等 参数为MyApiResult type 0 连接成功 1 连接失败或异常断开 (例如设备蓝牙关闭了) 10000 无定位权限
蓝牙成功后扫描周边服务和特征值
scanServices
参数1 回调周边服务和特征值 MyApiResult data 为BleServices[]
安卓设置mtu
setMtu
参数1 mtu 值 int 参数2 回调函数mtu 是否设置成功 0成功 1 失败
获取默认通知和写周边服务和特征值(需要先调用scanServices )
getSericUUID
return string 服务UUID
getNotityUUID
return string 通知UUID
getwriteUUID
return string 写数据 UUID
写数据
writeDataToBle
参数1 周边服务uuid string
参数2 写数据特征uuid string
参数3 数据 number[] 数组
参数4 回调函数 MyApiResult 回调写入成功或失败 0 成功 1 失败
订阅通知
onNotityReadBleData
参数1 周边服务uuid string
参数2 写数据特征uuid string
参数3 是否开启/关闭 boolean
参数4 回调通知数据 MyApiResult data 为收到的数据
断开连接
close
打赏
感谢您使用此插件,如果你觉得本插件,解决了你的问题,赠人玫瑰,手留余香。
许可协议
MIT协议